在Shopify中如何通过url向购物车添加不同数量多个产品 [英] In Shopify how to add multiple products to cart with varying quantities via url
本文介绍了在Shopify中如何通过url向购物车添加不同数量多个产品的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我知道您可以在Shopify中添加多个产品,如下所示:
/cart/add?id[]=VARIANT_ID1&id[]=VARIANT_ID2
我的问题是,您将如何调整添加的每个产品的数量?
例如,我希望VARIANT_ID1
数量为2,VARIANT_ID2
数量为1?
我尝试过:
/cart/add?id[]=VARIANT_ID1&quantity=2&id[]=VARIANT_ID2&quantity=1
但它刚刚使所有内容的数量都为1。
推荐答案
更新
对Ajax API进行了更新,现在允许使用同一请求添加具有不同数量的多个变体。
示例:
fetch('/cart/add.js', {
method: "post",
headers: { 'content-type': 'application/json' },
body: JSON.stringify({
items: [
{
id: 33116502556724,
quantity: 5
},
{
id: 33116502589492,
quantity: 3
}
]
})
})
旧答案
您不能将数量用作每个变体的单独项目。
您有几个选项,但它们都有一些缺点。
请参考此文档了解请求:https://help.shopify.com/en/themes/development/getting-started/using-ajax-api
使用/cart/add.js
您可以创建多个Ajax请求,并将每个单独的项目添加为新的Ajax请求。
优点:
- 如果购物车中的产品已经存在,则不会影响它们
缺点:
- AJAX请求太多
使用/cart/update.js
您可以发出单个请求,并向每个变量传递不同的数量。
优点
- 使用单个AJAX请求以不同数量保存所有变体
缺点
- 如果已经添加到购物车中,您将覆盖产品数量
因此,解决方案可能是获取
cart.js
响应检查是否存在当前变体,如果存在,则在将数量添加到现有变量的同时进行update.js
。所以这不是那么直截了当的。
我想不出更简单的解决方案,但最终您可能需要至少2个Ajax调用才能添加不同的数量。
这篇关于在Shopify中如何通过url向购物车添加不同数量多个产品的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文