get_term_by()

get_term_by() 関数の概要

get_term_by()関数は、WordPressのデータベースから特定のフィールド値に基づいてターム(用語)を取得するための関数です。この関数を使用することで、ID、スラッグ、名前、またはタームメタデータに基づいてターム情報を取得できます。カテゴリ、タグ、カスタムタクソノミーなど、さまざまなタームを検索する際に便利です。

パラメータの説明

get_term_by()関数には、以下のパラメータを設定することができます:

  • $field (string) – 必須: 検索に使用するフィールドを指定します。’id’、’slug’、’name’、または ‘term_taxonomy_id’ のいずれかを指定できます。
  • $value (string|int) – 必須: 検索するフィールド値を指定します。
  • $taxonomy (string) – 必須: タームが属するタクソノミーの名前を指定します。
  • $output (string) – オプション: 取得するデータの形式を指定します。’OBJECT’(デフォルト)、’ARRAY_A’、’ARRAY_N’のいずれかを指定できます。
  • $filter (string) – オプション: フィルタを指定します。デフォルトは ‘raw’ です。

使用例

以下は、get_term_by()関数を使用して特定のスラッグに基づいてターム情報を取得し、表示する例です:

<?php
$term_slug = 'example-slug'; // 検索するタームのスラッグ
$taxonomy = 'category'; // タクソノミーの名前
$term = get_term_by('slug', $term_slug, $taxonomy);

if ($term) {
    echo 'ターム名: ' . $term->name . '<br>';
    echo 'タームID: ' . $term->term_id . '<br>';
    echo 'タームスラッグ: ' . $term->slug . '<br>';
    echo 'ターム説明: ' . $term->description . '<br>';
    echo '親タームID: ' . $term->parent . '<br>';
    echo '投稿数: ' . $term->count . '<br>';
} else {
    echo 'タームの取得に失敗しました。';
}
?>

この例では、’example-slug’というスラッグを持つタームを ‘category’ タクソノミーから取得し、その詳細を表示しています。

関連する関数

  • get_term(): 特定のターム情報を取得するための関数です。
  • get_terms(): 特定のタクソノミー内のターム一覧を取得するための関数です。
  • get_the_terms(): 投稿に関連付けられたターム情報を取得するための関数です。
  • get_term_link(): 特定のタームのURLを取得するための関数です。