当前位置: 首页 > 知识库问答 >
问题:

Woocommerce将产品作为不同的项目多次添加到购物车

计承德
2023-03-14

我有一些自定义代码,添加一个项目到购物车,一个可变产品。如果我把同样的产品加两次,它只是增加了数量。我希望它添加产品作为一个不同的项目在推车中再次。

我该怎么做呢?使用domain.com?add-to-cart=3434&variation_id=4434等链接将项目添加到购物车中。

$woocommerce->cart->add_to_cart(522,1, 523,array("attribute_colour" => "colour","attribute_size" => "a3", "attribute_invoice-numbering" => "yes", "attribute_quantity-column" => "yes", "attribute_cc-type" => "duplicate"));

当该代码将项目添加到购物车时,会导致以下情况:

警告:第291行/home/****/public_html/wp-content/plugins/woocommerce/includes/class-wc-shipping.php中为foreach()提供的参数无效

似乎没有任何可用的运输方法。请仔细核对您的地址,如果您需要任何帮助,请与我们联系。

共有1个答案

姬朗
2023-03-14

试试这个!

/*
 * @desc Force individual cart item
 */
function force_individual_cart_items( $cart_item_data, $product_id ){

  $unique_cart_item_key = md5( microtime().rand() );
  $cart_item_data['unique_key'] = $unique_cart_item_key;

  return $cart_item_data;

}

add_filter( 'woocommerce_add_cart_item_data','force_individual_cart_items', 10, 2 );


/*
 * @desc Remove quantity selector in all product type
 */
function remove_all_quantity_fields( $return, $product ) {

    return true;

}

add_filter( 'woocommerce_is_sold_individually', 'remove_all_quantity_fields', 10, 2 );
 类似资料:
  • 我经营一家Woocommerce商店,该商店也提供免费产品(_常规价格=0)。客户必须选择数量并将其添加到购物车中,然后下订单才能收到产品。但这并不是Woocommerce的工作原理,它隐藏了所有价格为0的产品的“添加到购物车”链接。并且不会在购物车页面中显示它们。有没有解决这个问题的办法?非常感谢。

  • 目标:在一个按钮点击中添加多个可变产品到购物车。 我试着将这段代码放入循环中,但它不起作用。 但是这种方法不能解决问题,因为我需要在一个按钮点击中添加几个产品变体。 所有的建议都将不胜感激。多谢了。

  • 我正在尝试根据购物车中的产品数量向购物车添加一个名为(送货费)的产品。 购物车示例: 产品A(数量5) 产品B(数量2) 产品C(数量4) 送货费(数量3)**这是3,因为这是添加送货费产品之前添加到购物车中的应计数的行项目总数。 我的代码有问题: 它总是返回一个更高的数字。我认为这是计算每个产品的数量,而不是实际的产品项目。 任何帮助都将不胜感激!

  • 我试图隐藏所有产品的“添加到购物车”按钮,除了我的woocommerce网站上的一个或两个项目。 这里有一个简单的解决方案,我发现将产品设置为“可购买=虚假”。放入function.php文件后,所有“添加到购物车”按钮都会消失。 如何将异常添加到此中? 我想显示产品ID的添加到购物车按钮22 我花了几个小时研究,如果有任何帮助,我将不胜感激。

  • 我是新来的。我想将产品添加到购物车并列出购物车的所有产品。我已经将Co-Cart插件添加到我的服务器,并且我正在使用Co-Cart API实现购物车相关功能。 我面临的问题是,我不能在我的反应本地应用程序中查看购物车产品。以下是我现在使用的API: 1.将产品添加到购物车: 方法:邮寄 URL:https://www.myhost.com/wp-json/wc/v2/cart/add?token=