我试图在我的模板中使用for循环遍历字母表中的每个字母,如果找到字母表的第一个字母,则打印出该数据。
我找不到办法做到这一点,我知道如何在PHP中做到这一点,但不能让它在液体中工作。
{% for range('a','z') as $i %}
{% if first_letter == $i %}
{% unless first_letter == current %}
<li class="test"><h2 id='{{ first_letter }}'>{{ first_letter }}</h2> </li>
{% endunless %}
<ul><li class="test"> {{ product_vendor | link_to_vendor }} </li> </ul>
{% assign current = first_letter %}
{% endif %}
{% endfor %}
前两行是什么在这里不起作用,我知道语法不正确,但我无法弄清楚如何让它工作。
答案 0 :(得分:1)
循环液体范围的语法是here in the Shopify docs:
{% assign num = 4 %}
{% for i in (1..num) %}
{{ i }}
{% endfor %}
{% for i in (3..5) %}
{{ i }}
{% endfor %}
但是,您只能使用范围内的数字,而不能使用字符串。
你见过this article吗?也许这种方法适用于您的情况。
答案 1 :(得分:0)
我们在这里谈论液体,所以你没有很多选择。这样可以正常工作,但请确保完成字母表。
{% assign letters = "a b c d e f g h i j" | split: ' ' %}
{% for letter in letters %}
{% if letter == 'g' %}
<!-- Letter {{ letter }} match! -->
{% endif %}
{% endfor %}