Hugoテーマ Mainroad 改善
今日は朝から冷え込んで、路面にはうっすらと雪が積もっている。
こんな日は外に出ず、暖かい部屋でゆっくり過ごすに限る。
暇な日曜日の時間つぶしとして、このブログのHugoテーマ「Mainroad」の改善に着手した。
デザインは気に入っているが、一点だけ不便を感じていた「個別記事ページでの前後ナビゲーション」を追加することにする。
以下、自分用の備忘録を兼ねたカスタマイズ手順だ。
- 個別記事に「過去記事・未来記事」ボタンを追加
Mainroadの layouts/_default/single.html を編集し、記事のヘッダー部分にナビゲーションを配置した。
blogn時代のように、記事の冒頭で前後の流れを確認できるようにしている。
<nav class="post-nav flex">
{{ with .PrevInSection }}
<div class="post-nav__item post-nav__item--prev">
<a class="post-nav__link" href="{{ .RelPermalink }}" rel="prev">
<span class="post-nav__caption">≪ 過去の記事</span>
<p class="post-nav__post-title">{{ .Title }}</p>
</a>
</div>
{{ end }}
{{ with .NextInSection }}
<div class="post-nav__item post-nav__item--next">
<a class="post-nav__link" href="{{ .RelPermalink }}" rel="next">
<span class="post-nav__caption">新しい記事 ≫</span>
<p class="post-nav__post-title">{{ .Title }}</p>
</a>
</div>
{{ end }}
</nav>
- メタ情報の整理(日付とカテゴリー)
境界線が二重にならないよう、テーマ標準の post_meta.html を活かしつつ、hugo.toml で表示を制御。
これで日付とカテゴリーがスッキリ一行に収まった。
[Params]
post_meta = [“date”, “categories”]
Mainroadのシンプルで清潔感のあるデザインは、かつて愛用した「blogn」の「記事が主役」という雰囲気にどこか通じるものがある。
Hugoに移行したことで、記事追加のフロー(Markdownを書いてビルドする工程)は、ブラウザだけで完結したblogn時代に比べれば若干の手間はある。
しかし、その反面、静的サイトとしての圧倒的な高速さと、管理の容易さは格段に向上した。
特に驚くべきは、サーバー側だ。
現在このブログは Raspberry Pi 2B で動かしているのだが、PHPを介さない静的配信のおかげで、嘘みたいに快速にページが表示される。
以前、サーバー側のWedデータ用ストレージをUSBメモリーからSSDに換装しておいたのだが、この劇的なレスポンスを予感していたからなのかもしれない(笑)
雪の日の静かな時間に、少しずつ理想のブログ環境へ近づけていく。
こうした「弄る楽しみ」があるのも、自前サーバーとHugoの組み合わせの醍醐味だ。