Hugo默认并没有归档页面, 但可以单独添加一个归档页面.

新建归档单页面模板

  1. 在Hugo根目录下新建模板文件(./layouts/archive/single.html)
  2. 将主题目录下的默认模板文件内容(./themes/theme_name/layouts/_default/single.html)拷贝到新建的模板文件

替换页面展现部分代码

将新建的模板文件中的页面展现部分替换成如下代码.

  1. 归档目录
  • .Site.Pages “Section” “post” 归档目录设置为content/post
  1. 可选归档时间
  • .Pages.GroupByDate “2006” 按年归档
  • .Pages.GroupByDate “2006-01” 按年月归档
  1. 折叠展开功能
  • 通过details标签实现
<h2>
  {{ range where .Site.Pages "Section" "post" }}
    {{ range (.Pages.GroupByDate "2006") }}
    <details class="menu" open>
      <summary>{{ .Key }}</summary>
      {{ range .Pages }}
      <article><h3><a href="{{ .Permalink }}" title="{{ .Title }}">{{ .Title }}</a></h3></article>
      {{ end }}
    </details>
    {{ end }}
  {{ end }}
</h2>

新建归档页面

  1. 新建一个归档页面./content/archive.md
  2. 在文件头添加type字段来引用归档页面模板
  3. 在文件头添加menu字段将归档页面链接添加到主目录
---
title: "Archive"
type: archive
menu:
  main:
    name: Archive
    weight: 1
---