【问题标题】:Liquid Loop prints duplicatesLiquid Loop 打印副本
【发布时间】:2021-04-14 03:26:09
【问题描述】:

我正在编辑使用(部分?)液体的“新鲜桌面知识库”主题。我没有太多经验。

知识库使用类别结构:-> 文件夹-> 文章

这是我遇到问题的循环。在输出可用类别列表的同时,它还会根据文件夹中的文章数量打印副本。

<div class="category-list__items">
            {% for category in portal.solution_categories%}
                {% for folder in category.folders %}
            {% if folder.articles_count > 0 %} 
              <div  class="category-list-item">
                <a href="{{category.url}}" class="category-list-item__link">
                  <div class="category-list-item__content">
                    <h3 class="category-list-item__title">{{category.name}}({{ folder.articles_count }})</h3>
                  </div>
                </a>
              </div>
             {% endif %}
           {% endfor %}
             {% endfor %}
             
          </div>

我想要输出的只是一个包含至少 1 篇文章的类别列表。

我明白了:

  • 水果 (2)
  • 水果 (2)
  • 蔬菜 (1)

当我想要的时候:

  • 水果 (2)
  • 蔬菜 (1)

【问题讨论】:

  • 似乎问题出在 solution_categories 数据上,它必须有重复的数据,您能分享一下 solution_categories 中的内容吗?
  • 这两个类别实际上只是水果和蔬菜。它打印水果两次,因为水果类别中的一个文件夹中有两篇文章,并且打印蔬菜一次,因为一个文件夹中有一篇文章,在蔬菜类别中。我不知道如何编写循环来表示:如果某个类别的文件夹中至少有一篇文章,则打印该类别(一次)

标签: loops for-loop liquid


【解决方案1】:

您可以使用{% break %} 有条件地中断 for 循环。

因此,如果您只想在找到具有articles_count &gt; 0 的第一个文件夹时呈现一个类别,然后中断循环并继续下一个类别,如下所示。

<div class="category-list__items">
  {% for category in portal.solution_categories%}
    {% for folder in category.folders %}
      {% if folder.articles_count > 0 %} 
          <div  class="category-list-item">
            <a href="{{category.url}}" class="category-list-item__link">
              <div class="category-list-item__content">
                <h3 class="category-list-item__title">{{category.name}}({{ folder.articles_count }})</h3>
              </div>
            </a>
          </div>
         {% break %}
       {% endif %}
     {% endfor %}
   {% endfor %}
</div>

【讨论】:

  • 就是这样。非常感谢!
猜你喜欢
  • 2022-08-23
  • 1970-01-01
  • 2011-09-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-14
  • 2022-01-19
相关资源
最近更新 更多