locate_block_template()


WordPressのlocate_block_template()関数は、指定されたブロックテンプレートを検索し、そのパスを返すために使用されます。この関数は、テーマやプラグインでカスタムブロックテンプレートを扱う際に役立ちます。

構文

locate_block_template( string $template, string $type, array $templates );

引数の説明:

  • $template(string) — テンプレートファイルのパス。
  • $type(string) — テンプレートのタイプ(例: ‘page’, ‘post’)。
  • $templates(array) — 検索するテンプレートファイルのリスト。

例1: 基本的なブロックテンプレートの検索

この例では、’page’タイプのテンプレートを検索します。

$template = locate_block_template( '', 'page', array( 'page-custom.php' ) );

例2: カスタムテンプレートの検索

カスタムテンプレートを検索し、そのパスを取得します。

$template = locate_block_template( '', 'custom', array( 'custom-template.php' ) );

例3: 複数のテンプレートを検索

複数のテンプレートを指定して検索します。

$template = locate_block_template( '', 'post', array( 'single-post.php', 'post.php' ) );

例4: テンプレートが見つからない場合のデフォルトテンプレート

テンプレートが見つからない場合、デフォルトのテンプレートを使用します。

$template = locate_block_template( 'default.php', 'page', array( 'page-custom.php' ) );

例5: テンプレートのタイプを動的に指定

テンプレートのタイプを動的に指定して検索します。

$type = 'post'; $template = locate_block_template( '', $type, array( 'single-' . $type . '.php' ) );

例6: テンプレートのパスを出力

検索したテンプレートのパスを出力します。

echo locate_block_template( '', 'page', array( 'page-custom.php' ) );

例7: テンプレートの存在確認

テンプレートが存在するかどうかを確認します。

if ( locate_block_template( '', 'page', array( 'page-custom.php' ) ) { echo 'テンプレートが見つかりました。'; }

注意点

  • テンプレートファイルが存在しない場合、関数は空の文字列を返します。
  • テンプレートの検索順序は、子テーマ→親テーマ→プラグインの順です。
  • テンプレートのタイプやパスを正確に指定することが重要です。

関連機能: