如果您执行add to cart on this page然后重新加载页面,则会将该项目添加两次。我们可以以某种方式避免在购物车页面上重新加载页面时添加两次吗?
注意:我没有添加代码,因为它的WooCommerce核心特定的东西。
答案 0 :(得分:0)
// define the woocommerce_add_to_cart callback
function action_woocommerce_add_to_cart( $array, $int, $int ) {
// make action magic happen here...
global $woocommerce;
//echo '<pre>'; print_r($woocommerce->cart->get_cart()); echo '</pre>'; die;
$product_id = 37; //current product id
foreach($woocommerce->cart->get_cart() as $key => $val ) {
$_product = $val['data'];
if($product_id == $_product->id ) {
return false; // Already added
}
}
};
// add the action
add_action( 'woocommerce_add_to_cart', 'action_woocommerce_add_to_cart', 10, 3 );