【PHP・WordPress】include、require、get_template_part()などの違い

WordPressでウェブサイトを作成していると、指定したファイルをインクルードする(読み込む)ことがあると思います。

そのような場合に、include、require、get_template_part()など、ファイルを読み込む方法はいくつかありますが、今回は、そのファイルを読み込む方法の違いなどのまとめとなります。

include、require

include、require文は、WordPress以外のPHPプロジェクトでも利用でき、ともに指定したファイルを読み込み実行することができます。

指定したファイル内の変数について

include、require文で指定したファイル内の変数は、読み込む側のファイル内で利用可能。

include_once、require_onceについて

include_once、require_once文では、指定したファイルが既に読み込まれている場合、ファイルの読み込みは行われません。

includeとrequireの違い|指定したファイルが見つからない場合

指定したファイルが見つからない場合、includeと、requireで以下の違いがあります。

include、include_once警告となりますがプログラムの実行は止まりません
require、require_onceエラーとなりプログラムが停止します

使用例

includeで指定したファイルを読み込み出力する例

以下は、同じディレクトリにある「template-parts」フォルダ内の「content.php」ファイルを読み込み出力する例となります。

include 'template-parts/content.php' ;

requireで指定したファイルを読み込み出力する例

以下は、同じディレクトリにある「template-parts」フォルダ内の「content.php」ファイルを読み込み出力する例となります。

require 'template-parts/content.php' ;

get_template_part() |WordPress関数

get_template_part()はWordPressで利用できる関数となり、WordPressのテンプレートパーツ(ヘッダー、サイドバー、フッターを除く)のファイルを読み込むことができ、以下のような特徴があります。

  • 子テーマと親テーマに同じ名前のファイルがある場合、子テーマを優先的に読み込み
  • get_template_part()を読み込む際に、アクションフック'get_template_part_{$slug}'を利用可能

指定したファイル内の変数について

get_template_part()で指定したファイル内の変数は、読み込む側のファイル内で利用できません。

指定したファイルが見つからない場合

警告はなくプログラムの実行は止まりません。

使用例

以下は、同じディレクトリにある「template-parts」フォルダ内の「content.php」ファイルを読み込み出力する例となります。また、引数に指定するファイル名に拡張子は不要です。

get_template_part( 'template-parts/content' );

参考サイトなど

コメント投稿コメント投稿欄を開く

コメントは項目欄(*は必須項目)を入力し、「コメントを送信」ボタンをクリックしてください。 (メールアドレスは公開されることはありません。コメントの公開は承認制となります。)

また、多忙によりコメントには返信できない場合があります。

Twitterで返信する場合はこちらから。