『WordPressのトップページを編集したい』
そうなった時、関係してくるファイルが「index.php」そして「home.php」です。この2つのファイルは比較されることが多いかと思います。
これらのファイルはどっちもトップページを編集できるファイルです。なので同じような意味のファイルとして認識される事もあるかと思います。
しかし似ているようで似てないんです。というのも、読み込まれる優先順位が違います。
また「front-page.php」なるファイルもあります。こちらはテーマによっては用意されていない場合もあるでしょう。このファイルもトップページを表示するためのテンプレートファイルなのです。
それでは、これらトップページを表示するためのPHPファイル、それぞれ違う部分についてみていきましょう。
photo by Christine Rondeau
「index.php」「home.php」「front-page.php」
「index.php」「home.php」「front-page.php」これらのテンプレートファイルによりトップページが読み込まれる優先度は
▼優先度低い → 優先度高い
「index.php」「home.php」「front-page.php」
となります。これはより優先度の高いテンプレートファイルのみが読み込まれるという事です。それぞれのファイルの特徴を見ていきましょう。
「index.php」優先度…小」
WordPressのテンプレートファイルの中で基本的となるファイルが「index.php」です。「index.php」はトップページ表示のための優先度こそ低いのですが、テンプレートファイルの中で必ず必要なファイルです。そもそもこのファイルがないとテーマとして認識されません。
「index.php」や「style.css」だけでもテーマを自作する事ができますが、一般的に配布されているテーマは「home.php」や「header.php」、「sidebar.php」、「comments.php」、「footer.php」などと役割分担をしてスムーズに管理できるような作りになっています。
そもそも「index.php」はトップページだけを表示するためのテンプレとではありません。トップページ、カテゴリ一覧ページ、アーカイブ一覧ページ、タグ一覧ページのテンプレートファイルがない場合は、この「index.php」の内容が反映されます。というこれらファイルの読み込む順番とてしては最後の方となるテンプレートなんですね。
「home.php」優先度…中
「home.php」はトップページを表示するためのテンプレートになります。「index.php」より優先度が高いので、「index.php」・「home.php」二つのファイルが存在する場合はこちらの「home.php」が反映されます。
「front-page.php」優先度…大
「front-page.php」WordPress3.0のバージョン以降から利用できるようになったテンプレートファイルです。これらのファイルの中では一番優先度が高いファイルになります。
「ダッシュボード操作」WordPressのフロントページ
またトップページをカスタマイズする方法はもう一つあるのです。WordPressのダッシュボードから設定するという方法です。
管理画面メニューから「設定」→「表示設定」を開いてみましょう。そのページの一番上にありましたね、ここです。
▼デフォルトでは「最新の投稿」となっています。
「フロントページの表示」の設定を「固定ページ」→「フロントページ」で予め作成した任意の固定ページを設定すると、その固定ページがトップページになるというわけですね。
「投稿ページ」って何?
「投稿ページ」というのがよくわかりませんね。「フロントページ」で設定した固定ページは「最新の投稿」のように新着記事が時系列で表示されるわけではありません。
それを固定ページのURLに新着記事を表示させるために用意されている設定です。「フロントページ」とは違う固定ページである必要があります。
トップページに作成した固定ページを設定した場合、記事一覧を見たいユーザーも中にはいるかと思います。そのような場合のために記事一覧表示させるWEBページを設定しておく項目という事になります。
「home.php」・「front-page.php」と固定ページ
ここで、ここまで前述した内容を一旦整理してみましょう。WordPressのトップページを読み込む時に使用されるテンプレートファイルが”読み込み優先度”の低い順に「index.php」「home.php」「front-page.php」と3つありました。
そしてダッシュボードからはWordPressの「フロントページの表示」から任意の固定ページを設定する事ができます。
そしてこれらの要素をどのように使い分けすればいいかというのが気になる所です。一般的にテンプレートファイルとして利用されるのは「home.php」「front-page.php」のファイルのようです。
「home.php」「front-page.php」の違い
このファイルを使い分けする時のための明確な違いはこのようになります。
▼「ダッシュボード操作」フロントページに固定ページを設定した場合
「home.php」…影響を受ける
「front-page.php」…影響を受けない
先ほどのように管理画面・ダッシュボードから固定ページを設定した場合にその影響を受けるのか・受けないのかの違いがあるようです。読み込み優先度の高い「front-page.php」はダッシュボードの設定よりも優先度が高いという事になりますね。
例えば、企業サイトトップページのグローバルメニューから「担当者/スタッフのブログ」を選択したらブログのトップページに飛ぶ。
というようなサイトを作る時にもこれらのテンプレートファイルやダッシュボードからの設定の組み合わせで制作する事ができるようです。
まとめ
このようにWordPressのトップページをカスタマイズするにはこれらのテンプレートファイルなどで編集する事ができます。