このサイトを構築するにあたって、静的サイトジェネレータとしてHUGOを使いました。 見やすいサイトを簡単に作れるように多くの人がHUGO向けにテーマを公開してくれています。 その中で、特に私が注目したのは、XMinというテーマでした。
実現したかったのは、英語コンテンツをトップレベルに、日本語コンテンツを/ja/配下に格納し、メニューで言語を切り替えられるようにすることでした。
この目的を達成する上で重要だったのは、テーマ独自の複雑な機能に振り回されることなく、Hugoの標準機能で多言語化を制御することでした。だからこそ、テーマ側の自己主張が少なく、カスタマイズの土台として最適な XMin のようなミニマルなテーマが、私にとっての最良の選択肢だったのです。
ミニマルなテーマは 「見通しが良い」 という大きなメリットがあります。
- 設定が少ない:
XMinは必要最小限の設定しか持たないため、hugo.yamlがテーマの設定と重複する部分がほとんどありません。サイト固有の設定はほとんどすべてhugo.yamlで一元的に管理できます。 - テンプレートがシンプル: 提供されるテンプレートファイルも非常にシンプルで、カスタマイズの土台として適しています。余計なロジックやスタイリングがないため、追加したコードがどのように動作するかが明確です。
- 学習に適している: Hugo のテンプレートの仕組みや変数の使い方を学ぶ上で、複雑なテーマよりもシンプルなテーマの方が、コードの流れを追いやすく、理解を深めるのに役立ちます。
高機能なテーマは、迅速に美しいサイトを構築できる反面、内部の仕組みを理解し、細かくカスタマイズしようとすると、「どこでどう設定が効いているのか分からない」という壁にぶつかりやすいです。
シンプルなテーマを選び、hugo.yaml とサイトの layouts ディレクトリで主要な挙動を制御するアプローチが、長期的に見てはるかに管理しやすく、堅牢なサイト構築につながるのではないでしょうか。