按主题 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
我用 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