テーマフォルダーとファイル構造
前述のように、デフォルトのTwentyテーマは、優れたテーマ開発の良い例の一つです。例えば、Twenty Seventeen Themeがどのようにファイル構造を整理しているかを見てみましょう:
.
├── assets (dir)/
│ ├── css (dir)
│ ├── images (dir)
│ └── js (dir)
├── inc (dir)
├── template-parts (dir)/
│ ├── footer (dir)
│ ├── header (dir)
│ ├── navigation (dir)
│ ├── page (dir)
│ └── post (dir)
├── 404.php
├── archive.php
├── comments.php
├── footer.php
├── front-page.php
├── functions.php
├── header.php
├── index.php
├── page.php
├── README.txt
├── rtl.css
├── screenshot.png
├── search.php
├── searchform.php
├── sidebar.php
├── single.php
└── style.css
メインテーマのテンプレートファイルはルートディレクトリにあり、JavaScript、CSS、画像はassetsディレクトリに配置され、template-partsはそれぞれのサブディレクトリ内に配置され、コア機能に関連する関数のコレクションはincディレクトリに配置されています。
クラシックテーマには必須のフォルダーはありません。ブロックテーマでは、テンプレートはtemplatesというフォルダー内に配置する必要があり、すべてのテンプレートパーツはpartsというフォルダー内に配置する必要があります。
style.css
は、CSSディレクトリ内ではなく、テーマのルートディレクトリに存在する必要があります。
言語フォルダー
テーマをinternationalize your themeすることはベストプラクティスであり、他の言語に翻訳できるようにすることが重要です。デフォルトのテーマには、翻訳用の.potファイルと翻訳された.moファイルを含むlanguages
フォルダーが含まれています。languages
はこのフォルダーのデフォルト名ですが、名前を変更することもできます。その場合、load_theme_textdomain()
を更新する必要があります。