WordPressは便利なもので何となくで、動いてしまうがゆえに予期せぬバグを引き起こす場合があります。自分が一からテーマを作成する場合、何か不具合があった場合消去法であれがいけない!なんて気づけますが、誰かが作ったテーマを保守・運用フェーズで参加し修正する場合謎のバグに遭遇することがあります。
バグの現象
- テンプレート選択の項目自体が表示されない!
- 絶対に正しく『Template Name』は指定している!
今回は、テンプレート選択ができる記述をしてもどうしても表示されない現象に遭遇しました。
まず、テンプレート選択ができるようにしたかったとは、どのようなことかというと、投稿・固定ページ・カスタム投稿どれでもいいのですがテンプレートファイルに『Template Name: xxx』とコメントアウトに記述することで、投稿画面から先手くできるようになります。

『Template Name』の指定の仕方は別記事にまとめたのでそちらをご覧ください。
解決法と問題点
- テーマフォルダに必須の『index.php』が消えていた!
- テーマフォルダ必須の『index.php』を作成してあげたら正常になった。
テーマをまず作成する第一歩としてやることは、WordPressにテーマとして認識させるためテーマフォルダを作成した後に、『style.css』と『index.php』を作成します。
今回私が遭遇したのは、その重要な『index.php』ファイルがどこかのタイミングで削除されていて『Template Name』の設定が正常に動作していませんでした。
サイト自体は、『front-page.php』があったので正常に動いている雰囲気を出しており気づかれていなく今回のバグが発覚してなぜか動かなくて困ったということで私に仕事が回ってきました。
WordPressテーマ開発者初心者だと『front-page.php』や『home.php』をやたら使って『index.php』を空で作成なんて何度か見たことあります。このようなことにならないように理解してテーマを作成しましょう…
まとめ
このように、WordPressでは直接関係なさそうでも間接的に動かなくなる場合があります。このようなバグに遭遇した場合デフォルトテーマに切り替え動作確認したり比較していくと早く気づけたりします。