我的 YAML 始终有页面的标题哈希。
---
title: Why Green and Black Teas Should be Mixed.
---
YAML 有时对某些页面有标题覆盖哈希。
---
title: Why Green and Black Teas Should be Mixed.
title-override: Best reasons why Green and Black Teas Should be Mixed.
---
这个标题覆盖哈希可以让我更改存档中的措辞。
存档具有条件逻辑,仅在没有标题覆盖哈希的情况下才使用标题哈希。看起来像这样:
<table>
<tbody>
{% assign sorted_by_title = site.pages | sort:'title' %}
{% for page in sorted_by_title %}
<tr>
<td>
<a href="{{ site.url }}{{ page.url }}">
{% if page.title-override %}
{{ page.title-override }}
{% else page.title %}
{{ page.title }}
{% endif %}
</a>
</td>
</tr>
{% endfor %}
</tbody>
</table>
问题:我按 title 按字母顺序排序。 “为什么”出现在“不好”和“友好”之后,所以桌子顺序会是这样的:
不幸的是,出现的内容不是按字母顺序排列的,因为我是按标题排序的,而不是按出现的内容排序。
如果我按标题优先排序,“绿茶和红茶应该混合的最佳理由”。不幸的是,如果它是唯一具有标题覆盖哈希的,则它首先出现。
如何按出现的内容排序,而不是仅按标题或标题覆盖排序?我尝试过使用 group_by 和 group_by_exp 来按两者排序,但它不起作用。
将线路
pages
更改为 posts
{% assign sorted_by_title = site.pages | sort:'title' %}
到
{% assign sorted_by_title = site.posts | sort:'title' %}
并创建相关的
_post
文件夹。
如果要排序,请检查标题中的小写和大写