如何在Jekyll中按post.title的字母顺序对site.posts进行排序

如何在Jekyll中按post.title的字母顺序对site.posts进行排序,jekyll,Jekyll,我有一些.md帖子,比如: 2016-10-01-first_post.md(标题:first) 2016-10-03-some_post.md(标题:some) 2016-10-04-Other_post.md(标题:Other) 2016-10-07-my_post.md(标题:my) 2016-10-08-just_a_post.md(标题:just) 我创建了一个.html文件: --- layout: default title: Archives --- <ul> {

我有一些
.md
帖子,比如:

  • 2016-10-01-first_post.md(标题:first)
  • 2016-10-03-some_post.md(标题:some)
  • 2016-10-04-Other_post.md(标题:Other)
  • 2016-10-07-my_post.md(标题:my)
  • 2016-10-08-just_a_post.md(标题:just)
我创建了一个
.html
文件:

---
layout: default
title: Archives
---
<ul>
{% for post in site.posts %}
<li><a href="{{ post.url }}">{{ post.title }}</a></li>
{% endfor %}
</ul>
我想按
post.title
的字母顺序对
site.posts
中的帖子进行排序,但我不知道如何:

• ANOTHER
• FIRST
• JUST
• MY
• SOME

因此,我正在寻找一些帮助,thx

您可以为site.posts数组分配一个变量,并使用| sort:post.title对它们进行排序。资料来源:


然后在数组中循环,就像通常在帖子中循环一样。

您可以像这样使用排序过滤器:
{%assign sortedPosts=site.posts | sort:'title'%}
然后循环
sortedPosts

{% for post in sortedPosts %}
  <a href="{{ site.baseurl }}{{ post.url }}">{{ post.title }}</a></li>
{% endfor %}
{%用于sortedPosts%中的post}

{%endfor%}
请注意,在sortedPosts | sort:'title'%}中,无法对post执行
{%操作。您必须分配,然后循环

{% for post in sortedPosts %}
  <a href="{{ site.baseurl }}{{ post.url }}">{{ post.title }}</a></li>
{% endfor %}