Jekyll:按子目录

时间:2016-02-09 03:01:23

标签: github jekyll

我正在使用jekyll在github.io上托管一个网站

主页有一个“最近的帖子”部分,显示最新的10个帖子。

我在index.html中使用以下代码生成列表:

<ul class="post-list">
{% for post in site.posts limit:10 %} 
  <li><article><a href="{{ site.url }}{{ post.url }}">{{ post.title }} <span class="entry-date"><time datetime="{{ post.date | date_to_xmlschema }}">{{ post.date | date: "%B %d, %Y" }}</time></span>{% if post.excerpt %} <span class="excerpt">{{ post.excerpt }}</span>{% endif %}</a></article></li>
{% endfor %}
</ul>

_posts目录有3个子目录。上面的代码从所有三个目录生成一个列表。我想在“Recent Posts”目录中排除其中一个目录中的帖子。

更一般地说,如何在_posts目录中选择子目录的子集?

1 个答案:

答案 0 :(得分:0)

我通过在for循环中添加 if 语句解决了这个问题:

{% if post.path contains 'xxx' or post.path contains 'yyy'%}
  <li><article>...</article></li>
{% endif %}

这适用于简单的情况,但对于更复杂的情况可能会变得丑陋。

for 循环似乎是在列表上迭代,但我无法弄清楚如何使用我想要的元素生成列表。我找不到Jekyll使用的脚本语言的好参考。