包括Snippets和模板,条件为Liquid

时间:2016-09-25 08:16:27

标签: shopify liquid liquid-layout

我尝试根据产品类型在产品页面上添加一些代码段和模板。然而,液体似乎有条件地产生片段。

我想要实现的一个例子:

{% if product.type == 'shoes' %}
   {% include 'shoes-template' %}
{% else %}
   {% include 'other-template' %}
{% endif %}

1 个答案:

答案 0 :(得分:2)

如果您有多种产品类型,则可以使用数组和if,而不是使用多个else ifcontains。 您还可以通过执行capture并查找字符串" Liquid error"来验证模板是否存在。

{% assign types = "shoes, shirts, pants" | split:", " %}
{% if types contains product.type %}
    {% assign snip = product.type | append:"-template" %}
{% else %}
    {% assign snip = "other-template" %}
{% endif %}

{% capture snip_content %}{% include snip %}{% endcapture %}
{% unless snip_content contains "Liquid error" %}
    {% include snip %}
{% endunless %}