テンプレートファイルにテンプレートパーツを呼び出して実行します。
get_template_part($slug,$name,$args);| 引数 | 必須/任意 | 引数に指定するもの |
|---|---|---|
| 第1引数 $slug | 必須 | テンプレート名を文字列で指定※テーマディレクトリからのパスを含めて指定可能 例: get_template_part('/inc/filename')この場合はテーマディレクトリ直下のincディレクトリ内のfilename.phpを呼び出す。 |
| 第2引数 $name | 任意 | テンプレート名の詳細名を文字列で指定初期値: null |
| 第3引数 $args | 任意 | テンプレートパーツ呼び出し時に引き継ぐ値を配列で指定初期値: [](空の配列) |
指定したテンプレートファイルを呼び出して実行します。
下記の例ではテーマディレクトリ直下のservice.phpを呼び出して実行します。
<?php get_template_part('service'); ?>下記の例ではテーマディレクトリ直下のincディレクトリにあるservice.phpを呼び出して実行します。
<?php get_template_part('/inc/service'); ?>下記の例ではテーマディレクトリ直下のincディレクトリにあるbanner-service.phpを呼び出して実行します。
<?php get_template_part('/inc/banner', 'service'); ?>第2引数を使わずに、get_template_part('/inc/banner-service') としても結果は同じです。
下記の例ではservice.phpを呼び出す際に、任意の値をclassという配列のプロパティに格納して渡しています。
<?php get_template_part('/inc/service', '', ['class' => 'specific-class']); ?>第3引数で渡された値は、配列$argsに格納されます。下記のように、service.php側で$argsからclassの値を受け取り、テンプレートパーツにclass名を追加することができます。
<div class="service <?php echo $args['class']; ?>">
<!-- 任意のHTML -->
</div>このようにテンプレートパーツ呼び出し時に値を指定して、テンプレートパーツの中で値を引き継ぐことができます。これにより、テンプレートパーツにちょっとした柔軟性を持たせることができます。
【引数とは】
テンプレートタグ(=関数)を実行する際に、引数を渡すことができるテンプレートタグがあります。引数は、関数の中で使われるので、渡す引数の値によって実行結果が変わってきます。何を処理したいのか、どのようなデータを取得したいのかによって渡す引数が変わります。
【引数について】
※当サイトでは初期値とデフォルト値の言葉の定義を区別せず、原則統一して初期値を採用しています。