在 jekyll 中打印出两个不同类别的帖子
Print out posts from two different categories in jekyll
我们在项目中使用了四种不同的 post 类别(开发人员、新闻、服务和职业),我知道如何同时打印所有 post:
{% for post in site.posts %}
<li>{{ post.title }}</li>
{% endfor %}
或每个单独类别的所有 post:
{% for post in site.categories.news %}
<li>{{ post.title }}</li>
{% endfor %}
我遇到的困难是在同一个 for 循环中仅打印来自两个类别(开发人员和新闻)的 posts。
这是我们的文件夹结构:
_post秒/
- 博客/
- 开发者/
- 新闻/
- 服务/
- 职业/
post 文件如下所示 (2017-03-16_my_post.md):
---
title: "Dev post Title"
categories: developers
layout: developer
---
我试过类似的方法,但我猜你不能在 for 循环中添加两个参数,因为它不起作用。它只为第一个参数打印 posts 而完全忽略第二个参数:
{% for post in site.categories.developers and site.categories.news %}
<li>{{ post.title }}</li>
{% endfor %}
有什么办法解决这个问题吗?我找不到任何可行的解决方案。任何帮助将不胜感激!非常感谢!
经过几个小时尝试解决这个问题并失去耐心后,我终于做对了。这个循环结合 if 语句将只打印来自这两个类别的帖子:
{% for post in site.posts %}
{% if post.categories contains 'news' or post.categories contains 'developers' %}
<li>{{ post.title }}</li>
{% endif %}
{% endfor %}
希望它能为其他人节省时间:)
要过滤包含两个类别的帖子,您需要浏览所有帖子并使用 "if" 运算符和 "and":condition A and condition B
.
{% for post in site.posts %}
{% if post.categories contains "developer" and post.categories contains "news" %}
<li>{{ post.title }}</li>
{% endif %}
{% endfor %}
然后它将只显示类别为开发人员和新闻强文本.
的帖子
我们在项目中使用了四种不同的 post 类别(开发人员、新闻、服务和职业),我知道如何同时打印所有 post:
{% for post in site.posts %}
<li>{{ post.title }}</li>
{% endfor %}
或每个单独类别的所有 post:
{% for post in site.categories.news %}
<li>{{ post.title }}</li>
{% endfor %}
我遇到的困难是在同一个 for 循环中仅打印来自两个类别(开发人员和新闻)的 posts。
这是我们的文件夹结构:
_post秒/
- 博客/
- 开发者/
- 新闻/
- 服务/
- 职业/
post 文件如下所示 (2017-03-16_my_post.md):
---
title: "Dev post Title"
categories: developers
layout: developer
---
我试过类似的方法,但我猜你不能在 for 循环中添加两个参数,因为它不起作用。它只为第一个参数打印 posts 而完全忽略第二个参数:
{% for post in site.categories.developers and site.categories.news %}
<li>{{ post.title }}</li>
{% endfor %}
有什么办法解决这个问题吗?我找不到任何可行的解决方案。任何帮助将不胜感激!非常感谢!
经过几个小时尝试解决这个问题并失去耐心后,我终于做对了。这个循环结合 if 语句将只打印来自这两个类别的帖子:
{% for post in site.posts %}
{% if post.categories contains 'news' or post.categories contains 'developers' %}
<li>{{ post.title }}</li>
{% endif %}
{% endfor %}
希望它能为其他人节省时间:)
要过滤包含两个类别的帖子,您需要浏览所有帖子并使用 "if" 运算符和 "and":condition A and condition B
.
{% for post in site.posts %}
{% if post.categories contains "developer" and post.categories contains "news" %}
<li>{{ post.title }}</li>
{% endif %}
{% endfor %}
然后它将只显示类别为开发人员和新闻强文本.
的帖子