Hugo Template メモ

まえがき

このサイトは静的サイトジェネレータHugoで構築しています。
構築にあたって、取り急ぎ公開されているテンプレート(テーマ)を使わせてもらっているのですが、
この度ドキュメントを読んだら簡単に作れそうだったので自作してみようと思い立ち。

最低限のテンプレート

公開することを考えず、個人のみで使う用であるなら、下記を用意すれば良い。

$ hugo new site xxxx

で生成したディレクトリ直下の

  • layouts/ ディレクトリに
    • _default/baseof.html を作成
    • _default/single.html を作成
    • _default/list.html を作成
    • 404.html を作成
    • 必要であれば
      • _default/li.html, _default/summary.html など作成
      • partials/*.html を作成
      • shortcodes/*.html を作成
      • robots.txt, rss.xml, sitemap.xml など作成
  • static/ ディレクトリにテンプレートで使う静的ファイルを置く
  • 外部データを使いたい場合は data/ ディレクトリにデータを置く(データを生成してからhugoする)

簡単な説明

baseof.html は、ブロックテンプレート用の基礎ファイル。
single.html は、記事ページのテンプレート。
list.html は、一覧ページ用のテンプレート。
404.html は、存在しないURL用のテンプレート。
li.html や summary.html は、.Render する場合のコード断片。いろんな種類の一覧を用意する場合に有用。
partials/*.html は、テンプレートに使用できるサブルーチン的なファイル達。
shortcodes/*.html は、記事ファイル(*.md)に使用できるサブルーチン的なファイル達。
data/ は、例えばGoogleアナリティクス問い合わせ結果とかを置くと、よく読まれている記事とかに使える。