我需要一些帮助,我想做的最好描述如下:
When on the collections page
If Product X is added 2 times to the cart
Then add the number 2 next to that product
So the customer knows what products are already inside the cart
所以基本上,如果看一下收藏页面,我希望能够看到已经添加到购物车中的产品。
我试过这个:
<!-- From 'product-grid-item.liquid' of the default Supply theme -->
{% assign count = 0 %}
{% for item in cart.items %}
{% if product.variants.first.id == item.id %}
{% assign count = count | plus: 1 %}
{% endif %}
{% endfor %}
{% if count > 0 %}<span>{{ count }}</span>{% endif %}
但它只是为产品X返回1。它应该返回2,因为它被添加了两次。
我做错了什么?
答案 0 :(得分:2)
这是工作代码:
{% assign count = 0 %}
{% for item in cart.items %}
{% if product.id == item.product.id %}
{% assign count = count | plus: item.quantity %}
{% endif %}
{% endfor %}
{% if count > 0 %}<span>{{ count }}</span>{% endif %}
答案 1 :(得分:1)
这是因为cart.items会返回订单项。因此每个唯一商品ID只会返回一次。如果您想计算任何商品ID的总商品数量,您需要查看line_item.quantity。参考docs.shopify.com/themes/liquid-documentation/objects/cart