Hugoで固定ページの日付を消す

1. はじめに

Aboutページを作っている時に、 日付を表示させたくなかったので、色々見て非表示にしました。
意外と方法が乗ってなかったのでメモしておきます。
(中身のソースコードを見てればわかるレベルだけど….)

2. themes

使っているHugoのテーマによって違いますが、
themes配下より、日付を渡している所を探します。
自分の場合、テーマはhugo_theme_picklesを使っており、
layouts/_default/配下に2ファイルありました。

  • li.html
  • single.html

上記の2ファイルを書き換えて対応します。

3. 書き換え場所

基本的に、日付渡している部分に{{if.Params.Date}}{{end}}を追加すれば良いです。

li.html

1
2
3
4
5
6
7
8
<p class="c-article__meta">
{{ if .Params.Date }}
  Posted on
  <time datetime="{{ .Date.Format "2006-01-02T15:04:05Z07:00" | safeHTML }}">
    {{ .Date.Format "Jan 2, 2006" }}
  </time>
{{ end }}
</p>

2行目と7行目に{{if.Params.Date}}{{end}}を追加

single.html

1
2
3
4
5
6
7
8
{{ if .Params.Date }}
<div class="c-time">
  Posted on
  <time datetime="{{ .Date.Format "2006-01-02T15:04:05Z07:00" | safeHTML }}">
    {{ .Date.Format "Jan 2, 2006" }}
  </time>
</div>
{{ end }}

1行目と8行目に{{if.Params.Date}}{{end}}を追加

あとは、ページを作る時に、
Front Matterのdate:~を削除すれば表示されないはずです。

4. まとめ

テスト投稿も兼ねて、とりあえず何か書いて見ました。
触ってみると色々拡張できそうで面白いですね。
コードブロックのところを、qiitaみたいに
ブロックの中でソースコード名を表示できるようにしたいなー。。