Json 在jekyll中打印两个不同类别的帖子

Json 在jekyll中打印两个不同类别的帖子,json,for-loop,jekyll,liquid,Json,For Loop,Jekyll,Liquid,我们在项目中使用了四种不同的帖子类别(开发者、新闻、服务和职业),我知道如何同时打印所有帖子: {% for post in site.posts %} <li>{{ post.title }}</li> {% endfor %} 我尝试过类似的方法,但我想你不能在for循环中添加两个参数,因为这不起作用。它只打印第一个参数的帖子,而完全忽略第二个参数: {% for post in site.categories.developers and site.categ

我们在项目中使用了四种不同的帖子类别(开发者、新闻、服务和职业),我知道如何同时打印所有帖子:

{% for post in site.posts %}
  <li>{{ post.title }}</li>
{% endfor %}
我尝试过类似的方法,但我想你不能在for循环中添加两个参数,因为这不起作用。它只打印第一个参数的帖子,而完全忽略第二个参数:

{% for post in site.categories.developers and site.categories.news %}
    <li>{{ post.title }}</li>
{% endfor %}
{%用于site.categories.developers和site.categories.news%}
  • {{post.title}}
  • {%endfor%}

    有什么办法吗?我找不到任何可行的解决办法。任何帮助都将不胜感激!非常感谢

    经过几个小时的努力,我终于找到了正确的答案。。此循环与if语句组合将仅打印来自这两个类别的帖子:

    {%for site.posts%}
    {%如果post.categories包含“news”或post.categories包含“developers”}
    
  • {{post.title}}
  • {%endif%}
    {%endfor%}
    要筛选包含两个类别的帖子,您需要浏览所有帖子并使用带有“and”的“if”操作符:
    条件A和条件B

    {% for post in site.posts %}
    {% if post.categories contains "developer" and post.categories contains "news" %}
     <li>{{ post.title }}</li> 
    {% endif %}
    {% endfor %}
    
    {%for site.posts%}
    {%如果post.categories包含“开发者”且post.categories包含“新闻”%}
    
  • {{post.title}}
  • {%endif%} {%endfor%}

    然后,它将只显示类别为开发者和新闻强文本的帖子

    非常感谢@marcanuy的建议!非常感谢!我也设法得出了相同的结论,只是使用“或”比较运算符而不是“和”来确保其中一个通过了。
    {% for post in site.categories.developers and site.categories.news %}
        <li>{{ post.title }}</li>
    {% endfor %}
    
    {% for post in site.posts %}
    {% if post.categories contains "developer" and post.categories contains "news" %}
     <li>{{ post.title }}</li> 
    {% endif %}
    {% endfor %}