For loop Liquid-if contains语句在for循环中不起作用

For loop Liquid-if contains语句在for循环中不起作用,for-loop,if-statement,shopify,liquid,shopify-template,For Loop,If Statement,Shopify,Liquid,Shopify Template,我在循环中有一个非常基本的条件不起作用: {% 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 %}

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

{% 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 %}
{%for collections.all.tags%}
  • {%endfor%}
    现在,我的
    tag|handle
    是“dodge”,如果我打印
    {{canonical_url}}
    我会得到
    https://localhost:3000/collections/all/dodge
    因此我的条件应计算为truthy并打印单词“active”


    如果我将语句修改为
    {%,如果规范url包含'dodge'%}
    ,它可以正常工作,但我需要它是动态的。有什么建议吗?

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

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

    首先必须将标签手柄的值分配给shopify液体变量,然后才能在条件下使用变量然后每件事都会运转良好,充满活力。谢谢

    首先,您必须为shopify liquid变量指定标记句柄的值,然后您将能够在条件下使用变量,然后所有东西都将正常工作并具有动态性。谢谢

    您是否尝试将句柄设置为变量并比较变量而不是句柄?这是一个建议;我不确定这是否有效。太棒了!它工作得很好,你想正式回答这个问题吗?当然,让我做一个回答你有没有试着把句柄设置成一个变量,并比较变量而不是句柄?这是一个建议;我不确定这是否有效。太棒了!它工作得很好,你想正式回答这个问题吗?当然,让我来回答