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

时间:2014-01-17 09:13:15

标签: wordpress woocommerce

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

2 个答案:

答案 0 :(得分: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;
}

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

答案 1 :(得分:10)

试试这个,

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

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

希望它的帮助..