概要
get_term_children
関数は、指定されたタクソノミーIDの子孫タクソノミーIDを取得するために使用される WordPress 関数です。この関数は、階層的なタクソノミー(例:カテゴリやカスタムタクソノミー)で特に役立ちます。以下は、一般的な使用ケースです。
- カテゴリのサブカテゴリをリスト表示する
- 記事に基づいた階層的タクソノミーを形成する
- ナビゲーションメニューの階層を構築する
- タクソノミーの階層を利用してフィルタリングする
- ページや投稿に関連する子要素を表示する
- ウィジェットやサイドバーでの分類の表示
- タクソノミーに関連するカスタムクエリを作成する
- データの整理や検索を構造化する
構文
get_term_children( $term_id, $taxonomy );
パラメータ
term_id
: 対象となるタクソノミーのID(整数)taxonomy
: 使用するタクソノミーのスラッグ(文字列)
戻り値
- 子孫タクソノミーIDの配列。タクソノミーに子がない場合は空の配列を返します。
関連する関数
使用可能なバージョン
get_term_children
関数は、WordPress バージョン 3.0 で追加されました。
コアファイルのパス
wp-includes/taxonomy.php
サンプルコード
サンプル1: 特定のカテゴリのサブカテゴリを取得
$subcategories = get_term_children( 10, 'category' );
print_r( $subcategories );
このコードは、IDが10のカテゴリに対するサブカテゴリのIDを取得し、その結果を表示します。
サンプル2: カスタムタクソノミーの子タームを取得
$child_terms = get_term_children( 15, 'my_custom_taxonomy' );
foreach( $child_terms as $child ) {
echo 'Child Term ID: ' . $child . '<br>';
}
この例では、カスタムタクソノミー my_custom_taxonomy
の子タームを取得し、それをリスト表示しています。
サンプル3: 子タームの有無をチェック
$children = get_term_children( 20, 'category' );
if ( empty( $children ) ) {
echo 'No children found for this term.';
} else {
echo 'Children found: ' . implode( ', ', $children );
}
この例は、指定したカテゴリに子が存在するかどうかを確認し、結果を表示します。
サンプル4: 子タームを含むタームの詳細を取得
$parent_term_id = 25;
$child_ids = get_term_children( $parent_term_id, 'category' );
foreach( $child_ids as $child_id ) {
$child_term = get_term( $child_id, 'category' );
echo 'Child Name: ' . $child_term->name . '<br>';
}
ここでは、親タームのIDから子タームの詳細を取得し、名前を表示しています。
サンプル5: タームをテーブル形式で表示
$terms = get_term_children( 30, 'my_custom_taxonomy' );
echo '<table>';
echo '<tr><th>Child Term ID</th></tr>';
foreach( $terms as $term ) {
echo '<tr><td>' . $term . '</td></tr>';
}
echo '</table>';
このコードは、子タームIDをテーブル形式で表示します。
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | |
register_sidebar | |
wp_loaded | |
send_headers | |
parse_query | |
pre_get_posts | |
wp | 〇 |
template_redirect | |
get_header | |
wp_head |
上述のアクションのうち、wp
アクションでこの関数が使用される可能性があります。
get_term_children
関数は、特定のバージョンで非推奨または削除されていません。