【问题标题】:specify variable array index for liquid指定液体的可变数组索引
【发布时间】:2018-03-27 11:53:47
【问题描述】:

我的液体码是

{% assign _product_id = product.id %}
  {% assign _product_tag = product.collections[0].title}
  {% assign _product_name = product.title %}

  {{_product_tag}}
  {% assign pagla_array = collections[_product_tag].products %}

  {{ pagla_array.first.title }}

这里最后一行什么也没显示。如果我使用静态索引来分配 pagla_array 像 {% assign pagla_array = collections['Beans'].products %} 那么它显示值。我在这里做错了什么?

【问题讨论】:

  • 错字在关闭元素处缺少 %:{% assign _product_tag = product.collections[0].title} 应该是 {% assign _product_tag = product.collections[0].title %}

标签: shopify liquid


【解决方案1】:

这一行:

{% assign _product_tag = product.collections[0].title}

未正确关闭。它应该以%}结尾

此外,您应该为集合使用句柄,而不是标题。

所以它应该变成:

{% assign _product_tag = product.collections[0].handle %}
....
{% assign pagla_array = collections[_product_tag].products %}

【讨论】:

  • 非常感谢。它就像一个魅力。现在你能解释一下handle到底发生了什么吗?
  • Handle 返回一个已处理的标题,以便所有特殊字符都被正确转义。例如,如果您有一个名为“Foo Bar”的集合,则句柄版本为foo-bar。这就是为什么你必须得到带有句柄的集合,否则你会得到像 collections[Foo Bar] 这样的无效语法。
  • 非常感谢。我是shopify的新手,从未使用过液体。这是第一次写液体。再次感谢您帮助我。
猜你喜欢
  • 2020-06-15
  • 2016-06-05
  • 1970-01-01
  • 1970-01-01
  • 2011-06-12
  • 2011-11-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多