在 Hugo 里显示系列文章
实机演示:
参考:
- Building a Series List with Hugo Shortcodes - RealJenius.com
- Show related content in series in Hugo [shortcode]
- Use Custom Taxonomies in Hugo
主要改动点:
- 做成 partial 而不是 shortcode,不需要手动添加;
- 允许一篇文章属于多个 series;
- 使用
<dl>
排版,内容与形式统一。
代码:(hugo-theme-diary/series.html)
{{ range $index, $series := .Params.series }}
<dl class="post-series">
<dt>
This is a post in the
<a href="{{ "/series/" | relLangURL }}{{ . | urlize }}">{{ $series }}</a>
series:
</dt>
<dd>
<ol>
{{ range $ind, $post := $.Site.Pages.ByDate }}
{{ if in $post.Params.series $series }}
<li>
{{ if eq $post.Permalink $.Page.Permalink }}
{{ $post.Params.title }} (current post)
{{ else }}
<a href="{{ $post.Permalink }}">{{ $post.Params.title }}</a>
{{ end }}
</li>
{{ end }}
{{ end }}
</ol>
</dd>
</dl>
{{ end }}
<hr />
站点设置需要更改:(config.yaml
)
taxonomies:
tag: tags
category: categories
series: series