ウエブサイトも木のような階層構造になっています。
実際の記事(leaf node)
いちばん端の部分(葉=leaf)に個々の記事があり、
葉に続く枝は、どこかで枝分かれをしているはずです。
このleafには、**index.md
**ファイルを作成して、実際の記事を作ります。
このleaf nodeのファイルを、hugo用語では (テンプレートがsingle.htmlなので)singleページと呼びます。
single pageのテンプレート変換は、
layouts/_default/baseof.html
を雛形にして、
layouts/_default/single.html
の定義が適用されて生成されます。
注:
layouts/_default/baseof.html
は、すべてのページの雛形です。
詳しくは、各テーマのlayouts
ディレクトリ以下をのぞいてください
[ hugo 作業場所の様子(抜粋) ]
content/
... (各自のコンテンツを置く場所) ...
themes/テーマ名/layouts/_default/baseof.html
themes/テーマ名/layouts/_default/single.html
セクションに分ける
地名ベースで階層構造を作っているなら、
枝分かれするところには町の説明を書きます。
ここに置くファイルは_index.md
です。
町ごと=セクションごとという意味なので、
hugoではsection pageと呼んでいます。
このファイルの雛形は色々ありえて複雑です。
正解は、
公式のHugo’s Lookup Orderか、
ソースコードを読んでください。
指定しない場合は、
テーマ/layouts/_default/
以下にあるlist.html
が使われています
(baseof.html -> list.html -(htmlを生成)-> _index.md
という意味です)
階層構造(例)
hokkaido/_index.md
|
+----/toyotomi/_index.md
+----/onsen-toyotomi-onsen/index.md
+----/koubou-letrier/index.md
ここで、
onsen-toyotomi-onsen/index.md
の代わりに
onsen-toyotomi-onsen.md
でも同じURL(.../onsen-toyotomi-onsen/
)が生成されます。
ただ、画像などを整理整頓するには同じディレクトリ(フォルダ)にimages/
を作り、
そこに集めておくのが良いと思うので、
普通にディレクトリを作成しています
リファレンス
- 公式ドキュメント(gohugo.io,英語)
- Hugo’s Lookup Order
- セクション機能を使って記事を階層化する(まくまくHugoノート)
- このページの最終更新が2017年なので、 凝ったことをしようとするなら、上の公式ドキュメントを読んだ方がよいです。 hugoの基本構造は変わっていないので、 おおむね、 このまくまくHugoノートさんを参考にしてokっぽいですけどね