Woocommerce从购物车中删除所有产品并将当前产品添加到购物车

sps*_*nct 4 wordpress woocommerce

嗨,我是woocommerce的新手,我的问题是只需要在购物车上添加单品,必须清除所有产品,并在我点击添加到购物车按钮时将当前产品添加到购物车

Job*_*ose 13

试试这个,

//For removing all the items from the cart
global $woocommerce;
$woocommerce->cart->empty_cart();
$woocommerce->cart->add_to_cart($product_id,$qty);
Run Code Online (Sandbox Code Playgroud)

类文件是 wp-content/plugins/woocommerce/classes/class-wc-cart.php

希望它的帮助..


Wis*_*abs 12

我有一个确切的解决方案.请尝试以下代码.

add_filter( 'woocommerce_add_cart_item_data', 'wdm_empty_cart', 10,  3);

function wdm_empty_cart( $cart_item_data, $product_id, $variation_id ) 
{

    global $woocommerce;
    $woocommerce->cart->empty_cart();

    // Do nothing with the data and return
    return $cart_item_data;
}
Run Code Online (Sandbox Code Playgroud)

上面的过滤器在函数add_to_cart()中的class-wc-cart.php中定义.
http://docs.woothemes.com/wc-apidocs/source-class-WC_Cart.html#774-905
因此,当按下添加到购物车按钮时,它会清空购物车,然后添加产品.