front-page.phpとhome.phpとindex.phpの関係
front-page.phpとhome.phpは、どちらもトップページのテンプレートとして使用可能なファイルですが、両方とも含まれているテーマも少なくありません。では、2つのテンプレートは、いつ、どのようなタイミングで使われるのでしょうか。
ここでは、front-page.php、home.php、index.phpがトップページのテンプレートとして使われるタイミングを紹介します。
この記事の内容
トップページはfront-page.phpが最優先
使用中のテーマにfront-page.phpが存在する場合は、トップページの表示レイアウトにはfront-page.phpが使われます。
front-page.phpとhome.phpの両方が含まれる場合でも、トップページのテンプレートとしてはfront-page.phpが優先されます。
front-page.phpが存在しない場合
front-page.phpが存在しない場合は、home.php、page.php、index.phpなどが使われます。そのタイミングは「設定」‐「表示設定」メニューの「フロントページの表示」の設定によります。
「フロントページの表示」が「最新の投稿」の場合
「フロントページの表示」が「最新の投稿」の場合はhome.phpが使われます。home.phpが存在しない場合はindex.phpが使われます。
「フロントページの表示」が「固定ページ」の場合
「フロントページの表示」が「固定ページ」の場合はpage.phpが使われます。
ただし、その固定ページにpage-スラッグ.phpのようなテンプレートが適用されている場合は、そのテンプレートが優先されます。
また、上記の設定では「投稿ページ」(ブログ記事一覧)のテンプレートにhome.php(存在しない場合はindex.php)が使われます。
まとめ
トップページのテンプレートにfront-page.php、home.php、index.phpが使われるタイミングは理解できたでしょうか。基本的にはfront-page.phpですが、すべてのテーマにfront-page.phpが存在するとは限りません。home.phpとindex.phpの優先順位もおさえておきましょう。