【问题标题】:Liquid - if contains statement not working in for loopLiquid - if contains 语句在 for 循环中不起作用
【发布时间】:2018-11-05 01:30:43
【问题描述】:

我在一个不起作用的循环中有一个非常基本的条件:

{% for tag in collections.all.tags %} 
     <li class="mb-1 ">
        <a class="text-white" title="{{ tag }}" href="#">
            {{ tag | handle }}
            {% if canonical_url contains tag | handle %}
                active
            {% endif %}
        </a>
     </li>
{% endfor %}

现在,我的tag | handle 是“躲避”,如果我打印我的{{ canonical_url }},我会得到https://localhost:3000/collections/all/dodge,所以我的条件应该评估为真并打印“活动”这个词。

如果我将我的声明修改为{% if canonical_url contains 'dodge' %},它可以正常工作,但我需要它是动态的。有什么建议吗?

【问题讨论】:

  • 您是否尝试将句柄设置为变量并比较变量而不是句柄?这是一个建议;我不确定这是否可行。
  • 太棒了!效果很好,要正式回答这个问题吗?
  • 当然让我回答一下

标签: for-loop if-statement shopify liquid shopify-template


【解决方案1】:

将句柄设置为变量,并使用变量而不是句柄进行比较。

【讨论】:

    【解决方案2】:

    首先,您必须将标签句柄的值分配给 shopify 液体变量,然后您将能够在条件下使用变量,然后一切都会正常工作且动态。谢谢!!

    【讨论】:

      猜你喜欢
      • 2018-10-19
      • 1970-01-01
      • 1970-01-01
      • 2019-01-29
      • 1970-01-01
      • 1970-01-01
      • 2016-01-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多