在Shopify中更新/删除购物车属性

时间:2012-12-01 15:29:42

标签: shopify liquid

我正在使用购物车属性将每个产品的额外信息添加到购物车(从产品页面)。 我专门使用购物车属性而不是订单项属性,因为客户需要能够稍后在订单项属性中不按顺序编辑此信息允许

添加信息工作正常,当客户决定从购物车中删除商品时会出现问题,因为虽然该商品已被删除,但购物车属性仍然存在,因为它与产品没有特别关联(除了命名之外)我们给它的惯例。)

那么,有没有办法更新/删除特定的购物车属性?

提前感谢您的回复!

1 个答案:

答案 0 :(得分:9)

我使用了购物车属性,因为它们被引入,并且发现了大部分与它们相关的错误(Shopify在此过程中固定),让我有足够的信心告诉您这个问题。

要编辑它们,只需为购物车提供用于创建它们的相同密钥,然后更改信息。如果您提供空值,则将删除该密钥。这只是一个关键:价值商店。顺便说一下,这些订单项也可以在我的书中编辑。我设法通过简单地改变键的值来编辑它们,并通过提供行项目索引值,你可能忽略了什么?

无论如何,如果您使用提供的Shopify Javascript API代码并检查该小型库,您将看到用于创建属性的函数。只需稍加改动,您就可以引入自己的购物车属性CRUD功能,以满足您的需求。

这是一个显示更新购物车属性的旧示例,数据是一个字符串,即“attributes [fizz] ='buzz'(并注意您可以存储JSON):

updateCartAttributes: function(data, callback) {
  var params = {
    type: 'POST',
    url: '/cart/update.js',
    data: data,
    dataType: 'json',
    success: function(cart) {
      if ((typeof callback) === 'function') {
        callback(cart);
      }
      else {
        Shopify.api.onCartUpdate(cart);
      }
    },
    error: function(XMLHttpRequest, textStatus) {
      Shopify.api.onError(XMLHttpRequest, textStatus);
    }
  }; 
  $.ajax(params);
}