get_template_part

説明

void | false get_template_part( string $slug [ , string $name = null [ , array $args = array() ] ] )
任意のテンプレートファイルを読み込む(表示する)。

パラメータ

  • $slug
    任意のテンプレート名。
  • $name
    テーマ名など(省略時はnull)。
  • $args
    [5.5.0]テンプレートファイルに引き継ぐパラメータを指定(省略時はarray())。

返り値

返り値はありません。

[5.5.0]テンプレートファイルが見つからなかった場合はfalseを返す。


注意

WordPress 3.0の標準テーマ「Twenty Ten」で使用されている新しいWordPressタグです。従来、各テンプレートで共通していたパートファイルを読み込む場合に使用されます。

テンプレートファイルは、STYLESHEETPATH、TEMPLATEPATHの順に検索され、最初に見つかったファイルが読み込まれる。

[5.5.0]パラメータ$argsが追加され、サイドバーファイルが見つからなかった場合のみfalseを返すように変更された。


使用例

  • テンプレートファイル'loop.php'を読み込む。
    <?php get_template_part( 'loop' ); ?>
  • テンプレートファイル'loop-search.php'または'loop.php'を読み込む。
    <?php get_template_part( 'loop', 'search' ); ?>

フィルター

直接実行するフィルターはありません。

アクション

[3.0.0]テンプレートファイルのファイル名を配列に格納する前に"get_template_part_{$slug}"アクションを呼び出す。パラメータ$slug$nameには本関数が受け取った内容が格納されている。[5.5.0]パラメータ$argsが追加され、本関数が受け取った内容が格納されている。
do_action( "get_template_part_{$slug}", $slug, $name, $args );
[5.2.0]テンプレートファイルをロードする前に'get_template_part'アクションを呼び出す。パラメータ$slugには本関数が受け取った内容が、$nameには受け取った内容を文字列でキャストした内容が、$templatesにはテンプレートファイルのファイル名を格納した配列が格納されている。[5.5.0]パラメータ$argsが追加され、本関数が受け取った内容が格納されている。
do_action( 'get_template_part', $slug, $name, $templates, $args );

ソースファイル

/wp-includes/general-template.php

最終更新 : 2020年08月18日 11:30



お勧め

時代はWP_Queryなのか(2011年8月1日 更新)

WordPressのテーマ作成において、メインの投稿記事とは別に特定の条件を指定した投稿内容を表示することが多々ある。つい最近まで get_posts関数を使用することが多かったのだが、最近はWP_Queryクラスを使用することが多くなってきた。

3.6リリース直前チェック(2013年7月26日 更新)

$wpdbは、WordPressのデータベースにアクセスする際に使用できる便利なオブジェクト。独自テーブルの利用やデータ検索の最適化など、標準提供される関数では実現できないことを手助けしてくれる。そんな$wpdbのescapeメソッドが3.6で非推奨(deprecated)になる。

テーブルブロックを投稿メタ(カスタムフィールド)に保存する(2022年1月5日 更新)

ふと「テーブルブロックの内容を投稿メタ(カスタムフィールド)として保存できたら便利なのでは」と思い、投稿メタの使い方を調べてみた。

さくらのVPSでKUSANAGI(2018年5月27日 更新)

請け負っていた業務が一段落したので、「さくらのVPS」で「KUSANAGI」を試してみました。推奨環境はメモリ4GBとなっているが、今回は実験的な利用なので、SSD 2GBプランでトライしました。

投稿画面のウェジェットを2列にする(2013年4月17日 更新)

ダッシュボード画面ではスクリーンレイアウトを最大4列まで選択できるのに、投稿画面は1列か2列のどちらか。高解像度のディスプレイを使っていると、投稿画面では大画面のメリットを生かせていない理由がここにあるのではと感じ、3列対応にしてみた。