按主题 Hyde-Hyde 标题对 Hugo 主页 Post 摘要进行排序

Sorting Hugo Homepage Post Summaries by Title with Hyde-Hyde theme

我用 Hugo 创建了一个静态站点,使用 Hyde-Hyde 主题,但我无法让主页(或帖子页面)上的 post-summaries 按日期排序。我知道使用不同的主题可以修复 post-sorting,但这个问题专门针对如何使其与 Hyde-Hyde 主题一起使用。以下可重现的代码示例:

这是使用 Hyde-Hyde 主题(及其 exampleSite 内容)获取新 Hugo 站点的代码:

~/$ hugo new site mySite
~/$ cd mySite
~/mySite$ git clone https://github.com/htr3n/hyde-hyde.git themes/hyde-hyde
~/mySite$ rm -rf themes/hyde-hyde/.git themes/hyde-hyde/.gitmodules
~/mySite$ mv themes/hyde-hyde/exampleSite/* .

我们现在可以构建站点并在本地提供服务:

~/mySite$ hugo
~/mySite$ hugo serve

...这告诉我们我们的网站可在 http://localhost:1313/

访问

如果您单击 localhost link,您将看到一个类似于(但不完全相同)"Demo" 页面 link 来自 the Hyde-Hyde theme homepage 的网站].但是,主页(和 'posts' 页面)上的帖子不按日期排序;您会注意到前三个帖子的日期是 2014 年 9 月,然后是 2014 年 3 月,然后是 2014 年 4 月。

根据 the github issue I filed,到目前为止我已经尝试更改

    {{ with .Data.Pages }}

    {{ with .Data.Pages.ByDate }}

themes/hyde-hyde/layouts/partials/page-list/content.html

{{ range . }}

themes/hyde-hyde/layouts/partials/posts-list.html

中的一些不同内容

但我无法让帖子按日期顺序显示在主页和 'posts' 页面上。

关于主页上的post订单,Maiki solved this on the hugo discourse page。将他的答案放在下面的块引号中:

"""

这是主页,在那个主题中由 layouts/index 呈现。html:

{{ $paginator := .Paginate (where .Site.RegularPages "Type" "in" site.Params.mainSections) }}
{{ range $paginator.Pages }}

那是设置你的分页器,然后通过它的范围。你可能想要:

{{ range $paginator.Pages.ByDate.Reverse }}

请注意,它使用的是内容的默认排序顺序,9 月 post 是加权的,而其他 post 不是。这也会影响列表。

"""

...对于我问题的另一部分,让 post 在 'posts' 页面上正确排序,解决方案是更改

{{range .}}

至:

{{ range .ByDate.Reverse }}

themes/hyde-hyde/layouts/partials/posts-list.html