テーマフォルダーとファイル構造

前述のように、デフォルトのTwentyテーマは、優れたテーマ開発の良い例の一つです。例えば、Twenty Seventeen Themeがどのようにファイル構造を整理しているかを見てみましょう:

  1. .
  2. ├── assets (dir)/
  3. ├── css (dir)
  4. ├── images (dir)
  5. └── js (dir)
  6. ├── inc (dir)
  7. ├── template-parts (dir)/
  8. ├── footer (dir)
  9. ├── header (dir)
  10. ├── navigation (dir)
  11. ├── page (dir)
  12. └── post (dir)
  13. ├── 404.php
  14. ├── archive.php
  15. ├── comments.php
  16. ├── footer.php
  17. ├── front-page.php
  18. ├── functions.php
  19. ├── header.php
  20. ├── index.php
  21. ├── page.php
  22. ├── README.txt
  23. ├── rtl.css
  24. ├── screenshot.png
  25. ├── search.php
  26. ├── searchform.php
  27. ├── sidebar.php
  28. ├── single.php
  29. └── style.css

メインテーマのテンプレートファイルはルートディレクトリにあり、JavaScript、CSS、画像はassetsディレクトリに配置され、template-partsはそれぞれのサブディレクトリ内に配置され、コア機能に関連する関数のコレクションはincディレクトリに配置されています。

クラシックテーマには必須のフォルダーはありません。ブロックテーマでは、テンプレートはtemplatesというフォルダー内に配置する必要があり、すべてのテンプレートパーツはpartsというフォルダー内に配置する必要があります。

style.cssは、CSSディレクトリ内ではなく、テーマのルートディレクトリに存在する必要があります。

言語フォルダー

テーマをinternationalize your themeすることはベストプラクティスであり、他の言語に翻訳できるようにすることが重要です。デフォルトのテーマには、翻訳用の.potファイルと翻訳された.moファイルを含むlanguagesフォルダーが含まれています。languagesはこのフォルダーのデフォルト名ですが、名前を変更することもできます。その場合、load_theme_textdomain()を更新する必要があります。