Liquid(Shopify)范围问题

时间:2014-05-15 15:08:45

标签: loops for-loop scope shopify liquid

我试图在几个嵌套循环(for循环)之外设置两个变量,然后检查或重新分配for中的变量。基本上,我试图检查current_tags并显示这些标签下的任何标签的链接(在我已经获得的层次结构中)。 Shopify似乎只支持一个级别的层次结构(集合及其相关产品),但我尝试使用这些标签使其看起来像我有多种级别的产品分类方法。所以衬衫,然后红色衬衫/棕色衬衫,然后红色真丝衬衫/棕色真丝衬衫,作为一个蹩脚的例子。 这是一些代码:

{% assign showtag = false %} 

        {% for link in linklists[settings.main_linklist].links %}
              {% if linklists[link.handle] == empty %}

              {% else %}

                    {% for link in linklists[link.handle].links %}
                      {% if linklists[link.handle] == empty %}

                      {% else %}

                          {% for link in linklists[link.handle].links %}                        

                              {% if linklists[link.handle] == empty %}
                              {% else %}
                                    {% capture temp_tag %}{{current_tags.first | replace: '-', ' '}}{% endcapture %}
                                     link {{link.title}}<br> 
                                     temp {{temp_tag}}<br>
                                     {% if showtag == true %}
                                          <li>{{ tag | highlight_active_tag | link_to_tag: tag }}</li>
                                      {% endif %}
                                     {% if link.title == temp_tag}
                                          {% assign showtag = true %}

                                     {% endif %}


                              {% endif %}
                               {% for link in linklists[link.handle].links %}                        
                                    {% capture temp_tag %}{{current_tags.first | replace: '-', ' '}}{% endcapture %}
                                    {% if linklists[link.handle] == empty %}

                                         {% if showtag == true %}
                                                    <li>{{ tag | highlight_active_tag | link_to_tag: tag }}</li>
                                           {% endif %}
                                           {% if link.title == temp_tag %}
                                                    {% assign showtag = true %}

                                          {% endif %}

                                    {% else %}

                                           {% if showtag == true %}
                                                <li>{{ tag | highlight_active_tag | link_to_tag: tag }}</li>
                                            {% endif %}
                                            {% if link.title == temp_tag %}
                                                {% assign showtag = true %}

                                           {% endif %}


                                    {% endif %}
                                {% endfor %}


                          {% endfor %}

                      {% endif %}
                    {% endfor %}

              {% endif %}
            {% endfor %}

上面有点乱,但在网站上缩进。无论如何,似乎变量showtag失去了范围而且在for循环中找不到 - 任何解决方案?

0 个答案:

没有答案