is_object_in_term()


WordPress関数is_object_in_term()は、指定したオブジェクト(投稿、ユーザーなど)が特定のタクソノミー用語に関連付けられているかを確認するために使用されます。

シンタックス

is_object_in_term( int|array $object_id, string $taxonomy, int|string|array $terms )

引数の説明

  • $object_id (int|array) — チェックするオブジェクトのIDまたはIDの配列。
  • $taxonomy (string) — 使用するタクソノミーのスラッグ。
  • $terms (int|string|array) — 確認する用語ID、スラッグ、またはその配列。

例 1: 投稿が特定のカテゴリに属しているかを確認

この例では、投稿が「ニュース」カテゴリに属しているか確認します。

<?php
if ( is_object_in_term( get_the_ID(), 'category', 'news' ) ) {
    echo 'この投稿は「ニュース」カテゴリに属しています。';
}
?>

例 2: タームIDを使用して確認

タームIDを使用して、投稿が特定のカテゴリに属しているかを確認します。

<?php
if ( is_object_in_term( get_the_ID(), 'category', 5 ) ) {
    echo 'この投稿はカテゴリID 5に属しています。';
}
?>

例 3: タームの配列を指定

複数のタームに属しているかを確認する例です。

<?php
if ( is_object_in_term( get_the_ID(), 'category', array( 'news', 'updates' ) ) ) {
    echo 'この投稿は「ニュース」または「アップデート」カテゴリに属しています。';
}
?>

例 4: カスタムタクソノミーで使用

カスタムタクソノミーを使用して、投稿が特定のタームに関連付けられているかを確認します。

<?php
if ( is_object_in_term( get_the_ID(), 'product_category', 'electronics' ) ) {
    echo 'この商品は「エレクトロニクス」カテゴリーに属しています。';
}
?>

例 5: 複数のオブジェクトを確認

複数の投稿IDが特定のカテゴリに属しているかを確認します。

<?php
$post_ids = array( 1, 2, 3 );
if ( is_object_in_term( $post_ids, 'category', 'news' ) ) {
    echo 'いずれかの投稿が「ニュース」カテゴリに属しています。';
}
?>

注意点

  • 存在しないタクソノミーやタームを指定した場合は、falseが返されます。
  • カスタムタクソノミーを使用する場合は、正確なスラッグ名を指定してください。

関連機能: