You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Shopify中for循环无法遍历数组问题求助

问题分析与解决

核心原因

你看到的["option1","option2","option3"]其实是字符串类型的JSON格式内容,并非Liquid原生支持的数组类型。Liquid的for循环只能遍历原生数组/集合,无法直接处理字符串形式的数组。

解决步骤

  1. 验证数据类型
    先输出数据类型确认问题:

    {{ collection.metafields.custom.filters.value.options | class }}
    

    如果输出是String,就说明确实是字符串而非数组。

  2. 将JSON字符串转为Liquid数组
    使用Shopify Liquid的json_parse过滤器把字符串解析成原生数组:

    {% assign filter_options = collection.metafields.custom.filters.value.options | json_parse %}
    
  3. 遍历解析后的数组
    现在就可以正常遍历了:

    {% for item in filter_options %}
      {{ item }}
    {% endfor %}
    

额外排查点

  • 检查元对象字段配置:确认options字段的类型是否设置为列表/数组,如果当初选的是文本类型,会导致内容以字符串形式存储。
  • 核对层级路径:确认collection.metafields.custom.filters.value.options的层级是否正确,部分元对象字段可能直接通过collection.metafields.custom.filters.options访问。

内容的提问来源于stack exchange,提问作者s.kuznetsov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 02:18:11