Woocommerce添加到购物车将整个股票添加到购物车

问题描述:

我在一个条件添加产品到另一个产品到购物车。因此,无论何时有人购买产品,都应该自动将其他辅助产品添加到购物车中。所以这里是我一直在尝试的:Woocommerce添加到购物车将整个股票添加到购物车

function save_gift_wrap_fee($cart_item_key) { 

    if($_POST['offered-product-id']) 
    { 
     global $woocommerce; 
     if($_POST['offered-product-variation-id']){ 
      $woocommerce->cart->add_to_cart($_POST['offered-product-id'],'1',$_POST['offered-product-variation-id'],array('Flavour'=>$_POST['offered-product-variation-name']),null);  

     } 
     else{ 
      $woocommerce->cart->add_to_cart($_POST['offered-product-id'],'1');  

     } 

     WC()->session->set($cart_item_key.'_offered_product_id', $_POST['offered-product-id']); 
     WC()->session->set($cart_item_key.'_offered_product_price', $_POST['offered-product-price']); 
     WC()->session->set($cart_item_key.'_offered_variation_id', $_POST['offered-product-variation-id']); 
    } 
    else 
    { 
     WC()->session->__unset($cart_item_key.'_offered_product_id'); 
    } 

} 
add_action('woocommerce_add_to_cart', 'save_gift_wrap_fee', 1, 5); 

我正在将产品添加到会话中,以便我可以将其价格重置为折扣价格。但问题是,每当我尝试添加产品时,主要产品都完美地添加到购物车中,但补充的是将所有可用库存添加到购物车中并显示消息“您无法将该数量添加到购物车 - 我们有3有库存,你的购物车里已经有3个了。“

我猜测的问题是与add_to_cart()的参数,我试图如下:

$woocommerce->cart->add_to_cart($_POST['offered-product-id'],'1',$_POST['offered-product-variation-id'],array('Flavour'=>$_POST['offered-product-variation-name']),null); 

$woocommerce->cart->add_to_cart($_POST['offered-product-id'],1,$_POST['offered-product-variation-id'],array('Flavour'=>$_POST['offered-product-variation-name']),null); 

获得相同的消息与两个线。

有什么建议吗?

林不知道,这将解决你的问题中的代码,但可能是这个插件会做你想要做http://woogang.com/product/woocommerce-chained-products-extension/

+0

感谢的话,但我与所有的自定义代码离开只是qunatity事情做。你知道我在代码中做错了什么吗? –