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

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/…
  • 各言語の下にセクション(postsmind_and_bodytechなど)を配置

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の組み込み機能により、言語切り替えやナビゲーションも自動的にサポートされる。

著者について

Profile Avatar

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

関連記事