はじめに
WordPress のテーマを作成していると、今表示しているのはどのテンプレートファイルなのかを確認したいことがよくあります。テンプレートファイルを確認する方法は色々あるのでわりとすんなり解決するのですが、子テーマだったり get_tempate_part() を多用していると、このページのこの部分はいったいどの PHP ファイルなんだ?と悩むこともあります。そんなときに便利なロードされたファイル全部見せのスニペットを紹介します。
get_included_files() / PHP
PHP では get_included_files() で、それまでにロードされたすべてのファイルのパスを取得することができます。これを全部表示するととんでもないことになるので、テーマディレクトリ以下のファイルのみに限定するとほぼ、欲しい結果を得られます。テーマディレクトリのパスは get_theme_root() で取得できるので、
get_theme_root()で始まるパスのみ抽出し、- パスから
get_theme_root()に一致する部分を削除します。
これでロードされたテーマ関連ファイルのみを見やすく表示することができます。
全部見せスニペット
wp_footer アクションにフックしているので、footer.php で wp_footer() してください。
また、このコードでは Debug-Bar-Extender の Variable Lookup ページで確認できるようにしているため、このまま使う場合は Debug Bar とあわせてプラグインをインストール・有効化してください。
まとめ
ファイルのパスは $includeds に配列で入っているので、Debug Bar を使わずに var_dump() などでお手軽に確認することもできます。せっかくなのでこのサイトの single ページの結果を晒しておきますね。
Included Files = array (
0 => '/pimpmysite.net/functions.php',
1 => '/rootstrap/functions.php',
2 => '/rootstrap/library/class-pm-rootstrap.php',
3 => '/rootstrap/library/class-pm.php',
4 => '/rootstrap/library/class-pm-admin.php',
5 => '/rootstrap/library/class-pm-page.php',
6 => '/rootstrap/library/class-pm-ogp.php',
7 => '/rootstrap/library/class-pm-options.php',
8 => '/rootstrap/library/class-pm-order.php',
9 => '/rootstrap/library/class-pm-ajax.php',
10 => '/rootstrap/library/class-pm-scripts.php',
11 => '/rootstrap/library/class-pm-nav-menus.php',
12 => '/rootstrap/library/class-pm-less.php',
13 => '/rootstrap/index.php',
14 => '/rootstrap/header.php',
15 => '/rootstrap/parts/html.php',
16 => '/rootstrap/parts/head.php',
17 => '/rootstrap/parts/og.php',
18 => '/rootstrap/parts/og-article.php',
19 => '/rootstrap/parts/favicon.php',
20 => '/rootstrap/parts/analytics.php',
21 => '/rootstrap/parts/afterbody.php',
22 => '/pimpmysite.net/parts/masthead.php',
23 => '/pimpmysite.net/parts/navigation.php',
24 => '/pimpmysite.net/parts/billboard.php',
25 => '/pimpmysite.net/parts/social.php',
26 => '/rootstrap/parts/primary.php',
27 => '/pimpmysite.net/content.php',
28 => '/pimpmysite.net/sidebar.php',
29 => '/rootstrap/footer.php',
30 => '/rootstrap/parts/colophon.php',
)
テンプレートは「13:親テーマの index.php」です。これは Debug Bar の WP Query のページでも確認できます。
テンプレートの確認方法は色々紹介されているので参考にしてみてください。