当我通过rest api将产品更新到购物车时,我正面临着更新我的WooCommerce购物车API中的持久购物车的问题。它没有显示在我的网站上。当我在API中添加网站上的产品时,我会得到产品,但是当从API添加产品时,网站购物车会被API购物车产品覆盖
我的休息api代码:
if ( sizeof( WC()->cart->get_cart() ) > 0 ) {
$cart = WC()->instance()->cart;
if ( woo_in_cart( $product_id ) ) {
$cart_id = $cart->generate_cart_id( $product_id );
$cart_item_id = $cart->find_product_in_cart( $cart_id );
$cart->set_quantity( $cart_item_id, $quantity );
} else {
$cart->add_to_cart( $product_id, $quantity );
}
} else {
WC()->cart->add_to_cart( $product_id, $quantity );
}
if ( ! empty( $user_id ) ) {
$full_user_meta['cart'] = WC()->cart->get_cart();;
update_user_meta( $user_id, '_woocommerce_persistent_cart_1', $full_user_meta );
}
答案 0 :(得分:1)
更新woocommerce_persistent_cart_1
是不够的,您还必须替换/更新特定于用户ID 的wp_woocommerce_sessions
表格中的会话购物车数据。