If statement 在Shopify中检查购物车
我希望在Shopify中得到一些液体方面的帮助,我在尝试根据客户添加的产品定制购物车时遇到了麻烦 基本上,如果客户添加了供应商a的产品,那么我希望购物车加载模板,为供应商a定制购物车 但如果产品来自供应商B,那么我希望它加载模板,为供应商B定制购物车 但是如果购物车中没有任何一个(或两个)的产品,那么我希望它加载默认购物车 {编辑:我发现加载模板的代码有什么问题,但现在我只需要逻辑方面的帮助,这样当购物车同时拥有两个品牌的产品时,它就会加载默认购物车。因为此时它会将两个购物车片段加载到页面中} 非常感谢您的帮助If statement 在Shopify中检查购物车,if-statement,shopify,liquid,If Statement,Shopify,Liquid,我希望在Shopify中得到一些液体方面的帮助,我在尝试根据客户添加的产品定制购物车时遇到了麻烦 基本上,如果客户添加了供应商a的产品,那么我希望购物车加载模板,为供应商a定制购物车 但如果产品来自供应商B,那么我希望它加载模板,为供应商B定制购物车 但是如果购物车中没有任何一个(或两个)的产品,那么我希望它加载默认购物车 {编辑:我发现加载模板的代码有什么问题,但现在我只需要逻辑方面的帮助,这样当购物车同时拥有两个品牌的产品时,它就会加载默认购物车。因为此时它会将两个购物车片段加载到页面中}
{% for item in cart.items %}
{% if item.vendor == 'Brand A' %}
{% include 'cart-a' %}
{% elsif item.vendor == 'Brand B' %}
{% include 'cart-b' %}
{% else %}
{% section 'cart-default %}
{% endif %}
{% endfor %}
我也试过:
{% case cart.items %}
{% when item.vendor == 'Brand A' %}
{% include 'cart-a' %}
{% when item.vendor == 'Brand B' %}
{% include 'cart-b' %}
{% when item.vendor == ‘Brand A’ and item.vendor == 'Brand B' %}
{% section 'cart-default' %}
{% else %}
{% section 'cart-default' %}
{% endcase %}
在液体中,使用阵列更容易。适用于您的工作代码:
{% assign vendors = cart.items | map: 'vendor'| uniq | join: ' ' %}
{% if vendors contains "Brand A" and vendors contains "Brand B" %}
{% section 'cart-default' %}
{% else %}
{% if vendors contains "Brand A" %}
{% section 'cart-a' %}
{% else %}
{% if vendors contains "Brand B" %}
{% section 'cart-b' %}
{% else %}
{% section 'cart-default' %}
{% endif %}
{% endif %}
{% endif %}
我想这些步骤可能会帮助你 步骤1:为两种不同类型的供应商和默认供应商创建不同的节,而不是代码段 步骤2:按照cart.liquid中的以下代码进行操作
{% assign vendor = '' %}
{% assign same = true %}
{% for item in cart.items %}
{% if vendor != '' or vendor == item.vendor %}
{% assign vendor = item.vendor %}
{% else%}
{% assign same = false %}
{% endif %}
{% endfor %}
{% if same == true %}
{% if vendor == 'Brand A' %}
{% section 'cart-a' %}
{% elsif vendor == 'Brand B'%}
{% section 'cart-b' %}
{% else %}
{% section 'cart-default' %}
{% endif %}
{% else %}
{% section 'cart-default' %}
{% endif %}
如果购物车包含两种供应商类型的多个项目,该怎么办?i、 e.购物车有两个项目,一个来自供应商“品牌A”,另一个来自“品牌B”!!在这种情况下,我希望它显示默认购物车