Hugo PaperMod 主题中文章的标签信息会显示在文章的底部,但是文章的分类信息作为文章的一个重要特征,没有在文章中显示出来。下面我将说明怎么在文章的元数据中显示分类信息,并且对每个分类添加一个到该分类的超链接。
- 复制主题文件夹下的 single.html (路径:themes\PaperMod\layouts\_default)到网站文件夹下(如果没有,新建目录:layouts\_default)
- 在 layouts\_default\single.html 文件中,找到
<div class="post-meta">
所在的位置,然后在原内容下追加添加分类信息的代码
<div class="post-meta">
{{- partial "post_meta.html" . -}} {{- partial "translation_list.html" . -}}
{{- partial "edit_post.html" . -}} {{- partial "post_canonical.html" . -}}
<!-- 在元数据中显示分类信息 -->
{{- $categories := .Language.Params.Taxonomies.category | default "categories"}}
<!-- 统计分类个数 -->
{{- $cnt := 0 }}
{{- range ($.GetTerms $categories) }}
{{- $cnt = add $cnt 1 }}
{{- end }}
<!-- 只有文章有分类信息时才显示 -->
{{- if gt $cnt 0 }}
{{- $i := 0 }}
<div class="meta-item"> · 
{{- range ($.GetTerms $categories) }}
<a href="{{ .Permalink }}">{{ .LinkTitle }}</a>
{{ $i = add $i 1 }}
<!-- 不是最后一个类别时,添加逗号分割类别 -->
{{- if lt $i $cnt}}
<span>,</span>
{{- end }}
{{- end }}
</div>
{{- end }}
</div>