Shopify使用购物车Cookie跟踪购物车ID

时间:2012-11-07 16:33:55

标签: api cookies shopify cart

这是shopify api论坛的交叉发布 -

我有一个应用程序依赖于在创建时识别购物车订单,然后将该ID与任何订单匹配(假设购物车最终成为订单)。根据@ HunkyBill的建议,这可以通过阅读“购物车”cookie来完成。这确实有效,但是看起来像是应该用cart对象完成的事情似乎是一种脆弱的方式。我有两个问题:

如果用户关闭了Cookie会发生什么情况(如果仍然是购物车,则无法访问购物车ID ..预购)?

是否可以简单地将CartId作为变量添加到购物车对象?

每个其他对象都有自己的id,可以通过Liquid访问...每一个。除了cart对象 - 它是直接链接到另一个对象的唯一对象,Order。我完全理解Shopify可能需要一个cookie变量来执行它的一些功能 - 我并不建议以任何方式修改该过程。但是,将购物车ID添加到购物车对象可以解决所有这些问题(对于应用程序开发人员),并提供一种简单的方法来将购物车活动与转换后的订单对齐。它也不会影响使用购物车cookie构建的任何产品。

如果有更好的解决方案/技术来识别购物车,然后将其与订单相关联,我会全力以赴。我有点惊讶的是,这种关键功能(基本上是跟踪转换)没有以更健壮和一致的方式处理。

1 个答案:

答案 0 :(得分:4)

如果用户关闭了Cookie,那么无论如何你都会被软管。如果没有来自cookie的会话ID,他们将无法构建购物车。

对于购物车:你是对的,在前端,液体购物车对象没有包含令牌。它只能通过cookie获得。

这是遗漏的几个原因:

  • 首先,当时只有一个购物车在视图中处于活动状态,因此在渲染页面时无需区分它。

  • 第二:在视图的上下文中,令牌毫无意义。用户永远不需要看到它。

就个人而言,我并不认为依赖cookie来处理数据是脆弱的。实际上,在液体中弹出的cart变量是根据在同一个cookie中找到的会话ID加载的。

那就是说,我不能想到它不被包括在液体物体中的充分理由。我将把它作为低优先级功能请求提交。