header.phpとfooter.phpの分割方法とメリット

Contents
WordPressテーマ制作の基本構造を正しく理解する
WordPressテーマを制作・カスタマイズするうえで、header.php と footer.php の分割は必ず理解しておきたい基本要素です。
この分割を正しく行うことで、テーマ全体の保守性・可読性・拡張性が大きく向上します。
本記事では、header.phpとfooter.phpの役割から具体的な分割方法、分割するメリットまでを、初心者にもわかりやすく整理して解説します。
header.phpとは何か
サイト上部と共通情報を管理するテンプレート
header.php は、Webページの上部構造と共通情報をまとめて管理するためのテンプレートファイルです。
主に以下のような内容を記述します。
<!DOCTYPE html>から<body>開始までの構造<head>内のメタ情報(文字コード・viewportなど)wp_head()の呼び出し- サイトヘッダー(ロゴ・ナビゲーションなど)
これらはほぼすべてのページで共通して使用されるため、1か所にまとめて管理するのが合理的です。
サイト下部とスクリプト読み込みを担うテンプレート
footer.php は、ページ下部の構造や処理をまとめるテンプレートファイルです。
一般的には、次のような要素が含まれます。
- フッターエリア(コピーライト・補助ナビなど)
- JavaScript読み込みのための
wp_footer() </body></html>の閉じタグ
wp_footer() はプラグインやテーマ機能が正常に動作するために重要なフックです。
footer.phpを正しく分割し、必ず記述する必要があります。
なぜ1ファイルにまとめないのか
HTMLを1ファイルにまとめることも技術的には可能ですが、WordPressテーマでは推奨されていません。
理由は明確で、再利用性と保守性が著しく下がるためです。
WordPressテーマは「複数ページで共通部分を使い回す」ことを前提に設計されています。
header.phpとfooter.phpの分割は、その思想を体現した構造と言えます。
分割することで得られる主なメリット
テーマ制作・運用の効率が大きく向上する
① 共通部分を一元管理できる
ヘッダーやフッターを修正したい場合、
1か所を修正するだけで全ページに反映されます。
ナビゲーション変更やスクリプト追加の際も、作業ミスを防ぎやすくなります。
② テンプレート構造が理解しやすくなる
index.php や single.php などのテンプレートは、
**「中身(コンテンツ)だけを書くファイル」**として整理できます。
<?php get_header(); ?>
<!-- コンテンツ -->
<?php get_footer(); ?>この構造により、ページごとの役割が明確になります。
③ WordPressの公式仕様に沿った安全な構造になる
wp_head() と wp_footer() は、
WordPressやプラグインがCSS・JavaScriptを正しく読み込むために不可欠です。
header.php・footer.phpにこれらを配置することで、
将来的な機能追加やプラグイン導入にも強いテーマになります。
最低限押さえておきたい実装の流れ
1. header.phpを作成する
<!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
<meta charset="<?php bloginfo( 'charset' ); ?>">
<meta name="viewport" content="width=device-width, initial-scale=1">
<?php wp_head(); ?>
</head>
<body <?php body_class(); ?>><?php wp_footer(); ?>
</body>
</html>3. 各テンプレートで呼び出す
<?php get_header(); ?>
<!-- ページ固有の内容 -->
<?php get_footer(); ?>この3ステップが、WordPressテーマにおける基本構造です。
分割時によくある注意点
初心者がつまずきやすいポイント
wp_head()やwp_footer()を書き忘れる<body>や</html>の位置がずれる- HTML構造がheader.phpとfooter.phpで不整合になる
これらはテーマ崩れやプラグイン不具合の原因になります。
分割後は必ず表示と動作を確認することが重要です。
この基本を理解すると、次のような応用が可能になります。
get_header('custom')による条件別ヘッダー- LP用・管理画面非表示用の特殊フッター
- パーツ分割(
template-parts)との連携
これらはすべて、header.phpとfooter.phpの役割を正しく理解していることが前提です。
まとめ
header.phpとfooter.phpの分割は、
WordPressテーマ制作における最重要の基礎構造です。
- 共通部分を一元管理できる
- テンプレートの役割が明確になる
- 将来の拡張や保守に強くなる
これらのメリットを最大限活かすためにも、
公式仕様に沿った正しい分割方法を身につけておくことが重要です。

