ワードプレスのget_term_children関数の使用方法・解説

概要

get_term_children 関数は、指定されたタクソノミーIDの子孫タクソノミーIDを取得するために使用される WordPress 関数です。この関数は、階層的なタクソノミー(例:カテゴリやカスタムタクソノミー)で特に役立ちます。以下は、一般的な使用ケースです。

  1. カテゴリのサブカテゴリをリスト表示する
  2. 記事に基づいた階層的タクソノミーを形成する
  3. ナビゲーションメニューの階層を構築する
  4. タクソノミーの階層を利用してフィルタリングする
  5. ページや投稿に関連する子要素を表示する
  6. ウィジェットやサイドバーでの分類の表示
  7. タクソノミーに関連するカスタムクエリを作成する
  8. データの整理や検索を構造化する

構文

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 関数は、特定のバージョンで非推奨または削除されていません。

この関数について質問する


上の計算式の答えを入力してください