如果商品不在购物车中,则显示添加到购物车按钮 Shopify
Show Add to Cart btn if item is not in cart Shopify
使用此代码时遇到问题。
我想要做的是:
如果产品已经在购物车中>
显示一次 'view cart' 按钮。
其他
显示一次添加购物车按钮
它确实如此,但它的打印效果就像单个产品的数量(循环出现)为 5,因此它重复添加到购物车 btn 5 次。
不管怎样,我的代码:
{% for product in collections[collection_].products %}
<div class="single-product">
<div class="single-product-image"><img src="{{ product.featured_image.src | img_url: 'large' }}" alt="{{ product.featured_image.alt | escape }}"></div>
<div class="single-product-details">
<h3><a href="{{ product.url | within: collection }}">{{ product.title }}</a></h3>
<div class="product-price">
<span class="new-price">{{ product.price | money }}</span>
</div>
</div>
<div class="single-product-action">
{% for item in cart.items %}
{% if item.product.id == product.id %}
<a href="/cart" class="added_to_cart">View Cart</a>
{% else %}
{% assign not_in_cart = true %}
{% endif %}
{% endfor %}
{% if not_in_cart %}
Add to Cart btn
{% endif %}
</div>
</div>
{% endfor %}
我需要输出:
如果产品在购物车中,请查看购物车按钮一次
或者
添加到购物车 btn 如果产品不在购物车中
谢谢
你应该稍微改变一下你的逻辑。
{% assign not_in_cart = true %}
{% for item in cart.items %}
{% if item.product.id == product.id %}
{% assign not_in_cart = false %}
{% break %}
{% endif %}
{% endfor %}
{% if not_in_cart %}
<a href="/cart" class="added_to_cart">View Cart</a>
{% else %}
Add to Cart btn
{% endif %}
我们将 not_in_cart
的默认值设置为 false
-> {% assign not_in_cart = true %}
之后,我们查看购物车中的商品是否存在,如果存在,我们将变量覆盖为 true
并退出循环。 (不需要中断,但如果我们已经知道它存在,就没有循环的意义)
然后我们创建一个 if 语句来检查 not_in_cart
是否为真。
使用此代码时遇到问题。 我想要做的是:
如果产品已经在购物车中>
显示一次 'view cart' 按钮。
其他
显示一次添加购物车按钮
它确实如此,但它的打印效果就像单个产品的数量(循环出现)为 5,因此它重复添加到购物车 btn 5 次。 不管怎样,我的代码:
{% for product in collections[collection_].products %}
<div class="single-product">
<div class="single-product-image"><img src="{{ product.featured_image.src | img_url: 'large' }}" alt="{{ product.featured_image.alt | escape }}"></div>
<div class="single-product-details">
<h3><a href="{{ product.url | within: collection }}">{{ product.title }}</a></h3>
<div class="product-price">
<span class="new-price">{{ product.price | money }}</span>
</div>
</div>
<div class="single-product-action">
{% for item in cart.items %}
{% if item.product.id == product.id %}
<a href="/cart" class="added_to_cart">View Cart</a>
{% else %}
{% assign not_in_cart = true %}
{% endif %}
{% endfor %}
{% if not_in_cart %}
Add to Cart btn
{% endif %}
</div>
</div>
{% endfor %}
我需要输出:
如果产品在购物车中,请查看购物车按钮一次 或者 添加到购物车 btn 如果产品不在购物车中 谢谢
你应该稍微改变一下你的逻辑。
{% assign not_in_cart = true %}
{% for item in cart.items %}
{% if item.product.id == product.id %}
{% assign not_in_cart = false %}
{% break %}
{% endif %}
{% endfor %}
{% if not_in_cart %}
<a href="/cart" class="added_to_cart">View Cart</a>
{% else %}
Add to Cart btn
{% endif %}
我们将 not_in_cart
的默认值设置为 false
-> {% assign not_in_cart = true %}
之后,我们查看购物车中的商品是否存在,如果存在,我们将变量覆盖为 true
并退出循环。 (不需要中断,但如果我们已经知道它存在,就没有循环的意义)
然后我们创建一个 if 语句来检查 not_in_cart
是否为真。