block_template_part()


WordPressのblock_template_part()関数は、テーマやプラグイン内のブロックテンプレートパーツを読み込むために使用されます。この関数は、ブロックテーマやフルサイト編集(FSE)で特に有用です。

構文

block_template_part( string $slug, string $name = null );

引数の説明:

  • $slug(string) — テンプレートパーツのスラッグを指定します。
  • $name(string) — オプション。テンプレートパーツの名前を指定します。指定しない場合はnullになります。

例1: 基本的なテンプレートパーツの読み込み

この例では、スラッグが「header」のテンプレートパーツを読み込みます。

<?php block_template_part( 'header' ); ?>

例2: 名前付きテンプレートパーツの読み込み

この例では、スラッグが「footer」で名前が「custom」のテンプレートパーツを読み込みます。

<?php block_template_part( 'footer', 'custom' ); ?>

例3: カスタム投稿タイプ用のテンプレートパーツ

カスタム投稿タイプ「product」用のテンプレートパーツを読み込みます。

<?php block_template_part( 'content', 'product' ); ?>

例4: 条件付きでテンプレートパーツを読み込む

特定の条件が満たされた場合にのみテンプレートパーツを読み込みます。

<?php if ( is_front_page() ) { block_template_part( 'home', 'featured' ); } ?>

例5: ループ内でのテンプレートパーツの使用

ループ内でテンプレートパーツを使用して、各投稿のコンテンツを表示します。

<?php while ( have_posts() ) : the_post(); block_template_part( 'content', 'single' ); endwhile; ?>

例6: 子テーマでのテンプレートパーツのオーバーライド

子テーマで親テーマのテンプレートパーツをオーバーライドします。

<?php block_template_part( 'sidebar', 'custom' ); ?>

例7: テンプレートパーツに変数を渡す

テンプレートパーツに変数を渡して、動的なコンテンツを表示します。

<?php $custom_data = array( 'title' => 'Hello, World!' ); block_template_part( 'content', 'dynamic', $custom_data ); ?>

注意点

  • テンプレートパーツのファイルは、テーマのpartsディレクトリに配置する必要があります。
  • テンプレートパーツのファイル名は、スラッグと名前に対応している必要があります。例: content-single.php
  • ブロックテーマでない場合、この関数は動作しない可能性があります。

関連機能: