Shopify Liquid文件多条件if语句失效,请求排查错误
Shopify Liquid多条件if语句错误排查与修正
问题根源
你的if语句存在逻辑矛盾:单个变量product_collection不可能同时等于两个不同的字符串值——"Organic and Natural Products"和"Dried Foods",导致条件永远不成立,只会执行else块的CONTENT HERE B。
修正方案
根据你的实际需求选择对应代码:
需求1:产品属于两个集合中的任意一个时显示CONTENT A
将and替换为or,表示满足任一条件即可:
{%- if product_collection == "Organic and Natural Products" or product_collection == "Dried Foods" -%} CONTENT HERE A {%- else -%} CONTENT HERE B {%- endif -%}
需求2:产品同时属于两个集合时显示CONTENT A
如果product_collection仅代表单个集合,而你需要判断产品是否同时在两个集合中,推荐用集合handle(比title更稳定,避免空格/大小写问题)进行判断:
{%- if product.collections contains collections['organic-and-natural-products'] and product.collections contains collections['dried-foods'] -%} CONTENT HERE A {%- else -%} CONTENT HERE B {%- endif -%}
注:将organic-and-natural-products和dried-foods替换为你对应集合的实际handle(可在Shopify后台集合页面的URL中查看)
内容的提问来源于stack exchange,提问作者Zaman Global Limited
相关产品推荐
相关产品推荐

