Hugo では月別のアーカイブページが用意されていない。過去のページにアクセスするのが難しい。そのため、月別のアーカイブページを作ることにした。
アーカイブページはトップメニューからアクセスできるようにしたい。月ごとにグループ分けし、新しい記事から順に表示させるようにしたい。
環境:
・macOS Ventura 13.5(英語環境)
・Hugo v0.119.0
・Hugo テーマ:Hugoplate
(1)hugo.toml に以下を追加する。
[taxonomies]
category = "categories"
tag = "tags"
archive = "archives"
tags
と categories
はデフォルトで有効になっているが、[taxonomies]
の項目を追記した場合は、それらもきちんと書かなくてはいけないようだ。
(2)各記事の Front Matter は以下のように追加するようにする。
archives: ["2024/05"]
(3)[多言語サイトの場合] {プロジェクト名}/i18n/
の ja.yaml
および en.yaml
にそれぞれ以下を追記する。
- id: archives
translation: アーカイブ
- id: archives
translation: Archive
(4){プロジェクト名}/config/_default/ の menus.ja.toml
および menus.en.toml
にアーカイブページ用のメニューを作成する。(多言語サイトでない場合は menus.ja.toml のみ)
(5){プロジェクト名}/themes/hugoplate/layouts/_default/terms.html
の最後の </div> </section> {{ end }}
直前に以下を追記する。
<!-- 新しい月別にループする -->
<div>
<!-- 新しい月別にループする -->
{{ $pages := .Data.Pages.ByTitle }}
<!-- terms.htlm は他の taxonomies と共通なので、archives の場合だけ新しい月別順にする -->
{{ if eq .Type "archives" }}
{{ $pages = $pages.Reverse }}
{{ end }}
{{ range $pages }}
<div class="月別のタイトル (例)2022/01">
{{ $anchor := anchorize .Title }}
<a href="{{ .Permalink | absURL }}">
<strong>{{ .Title }}</strong>
</a>
</div>
<ul>
<!-- 月別内の記事一覧ループ -->
{{ range .Data.Pages.ByDate.Reverse }}
<li>
<a href="{{ .Permalink }}">・{{ time.Format "2006/01/02" .PublishDate }} {{ .Title }}</a>
</li>
{{ end }}
</ul>
{{ end }}
</div>
(4)なお、Front Matter に毎回手動で YYYY/MM を入力するのは大変だ。テンプレートファイルに以下を追記しておくことで、今後の新規投稿の際には自動入力できる。
archives = ["{{ dateFormat "2006/01" .Date }}"]
参考:
Hugoで月別アーカイブを作る | backport
https://backport.net/blog/2017/09/08/hugo_monthly_archives/
Hugo - Taxonomyを使ってアーカイブページを作る - すいはんぶろぐ.io
https://suihan74.github.io/posts/2020/01_20_00_hugo_taxonomies/
静的サイトジェネレータHugoを使ったサイト構築(アーカイブ編) · feedtailor Inc. スタッフブログ
https://staff.feedtailor.jp/2016/08/10/hugo_16/
[Hugo] 月別の記事一覧を表示する
https://note.dokeep.jp/post/hugo-archives/
Taxonomies | Hugo
https://gohugo.io/content-management/taxonomies/
Hugo で新規投稿|荒川仁志
https://note.com/hitoshiarakawa/n/nb866cdcedba8
バスカヴィル家の犬 【新訳版】 シャーロック・ホームズ・シリーズ (創元推理文庫) | アーサー・コナン・ドイル, 深町 眞理子 | 英米の小説・文芸 | Kindleストア | Amazon
https://amzn.to/4bsGeVU