Hugoで多言語コンテンツを整理する方法

目次
Hugoで多言語コンテンツを管理するには、言語ごとのフォルダー構成を使うのが簡単で効率的だ。 ここでは、英語と日本語の記事を個別のフォルダーに分けて整理し、Hugoの多言語機能を活用する方法を解説する。
推奨フォルダー構成
トップレベルで言語ごとに整理する:
content/
├── en/
│ ├── posts/
│ │ └── article3.md
│ ├── mind_and_body/
│ │ └── article1.md
│ └── tech/
│ └── article2.md
├── ja/
│ ├── posts/
│ │ └── article3.md
│ ├── mind_and_body/
│ │ └── article1.md
│ └── tech/
│ └── article2.md
- 英語の記事は
content/en/…
- 日本語の記事は
content/ja/…
- 各言語の下にセクション(
posts
、mind_and_body
、tech
など)を配置
Hugo設定
hugo.toml
(または config.toml
)に以下を記載する:
defaultContentLanguage = "en"
[languages]
[languages.en]
languageName = "English"
contentDir = "content/en"
weight = 1
[languages.ja]
languageName = "Japanese"
contentDir = "content/ja"
weight = 2
メリット
.ja.md
や.en.md
のようなファイル名にする必要はない。フォルダーで言語を判別する。- 多言語サイトでも整理しやすく、管理が直感的だ。
- 同じファイル名・セクション構成なら、Hugoが自動的に翻訳記事同士をリンクする。
まとめ
この構成にすることで、各言語のコンテンツ整理が容易になり、メンテナンスもしやすくなる。Hugoの組み込み機能により、言語切り替えやナビゲーションも自動的にサポートされる。
著者について

Genx
1982年生まれ、日本人のビートメイカー・音楽プロデューサー。実験的なヒップホップビートを制作。国際的な環境で育ったため英語が話せる。趣味は筋トレ、アートワーク制作、ウェブサイトカスタマイズ、Web3。韓国が大好き。
ウェブサイト:genxrecords.xyz