• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

関数リファレンス/get objects in term

提供: WordPress Codex 日本語版
移動先: 案内検索

指定されたターム(複数でもよい)が付いているオブジェクトの ID を取得します。 タームは、指定されたタクソノミーのタームとします。

$taxonomies の文字列は、この関数を実行する前に登録済みでなければなりません。 有効なタクソノミーが見つからなければ WP_Error を返します。 WP_Error は PHP 5 の例外のようなものですが、WordPress ではキャッチ処理ができません。 しかし WP_Error が返されたかチェックしてエラーメッセージを取得できます。

$term_ids$taxonomies のようにはチェックされません。 しかしオブジェクトの ID を取得する為には予め存在していなければなりません。

返されるオブジェクト ID の順序を変更できます。 PHP のソート系の関数を使用するか、または $args に ASC か DESC を与えます。 ASC と DESC は、キー 'order' に指定します。

使い方

<?php get_objects_in_term( $term_ids, $taxonomies, $args ) ?>

パラメータ

$term_ids
整数|配列) (必須) タームの ID、またはターム ID の配列。
初期値: なし
$taxonomies
文字列|配列) (必須) タクソノミーのスラッグ、またはタクソノミーのスラッグを要素とする配列。
初期値: なし
$args
配列) (オプション) 返されるものを変更。
初期値: array()

指定可能な引数

order 
(文字列)
  • ASC - デフォルト:昇順にソートする。
  • DESC :降順にソートする。

参考: 引数は wp_parse_args() 関数が使用する形式で与えます。

戻り値

(WP_Error|配列) 
タクソノミーが存在しなければ WP_Error を返す。オブジェクトが一つも見つからなければ空の配列を返す。見つかればオブジェクト ID の配列を返す。

参考: 一つのオブジェクトに、$term_ids に与えたタームの 2 つ以上が付いていると、オブジェクト ID が重複して含まれる結果になります。

用例

カテゴリーアーカイブページにて、現在のカテゴリーの投稿に付いているタグの一覧を表示します。

<?php
if ( is_category() ) {
    // 現在のカテゴリーのIDを取得
    $cat_id = get_query_var( 'cat' );
    // 表示中のカテゴリーに属する投稿のIDを配列で取得
    $current_posts = get_objects_in_term( $cat_id, 'category' );
    // 表示中のカテゴリーに属する投稿に付けられたタグの情報をまとめて取得
    $current_tags = wp_get_object_terms( $current_posts, 'post_tag' );
    if ( $current_tags ) {
        echo 'このカテゴリーの投稿に付いているタグの一覧:<ul>' . "\n";
        foreach ( $current_tags as $tag )
            echo '<li>' . $tag->name . '</li>' . "\n";
        echo '</ul>';
    }
}
?>


参考

  • wp_parse_args() 関数を使って、文字列形式の $args を配列に変換します。
  • グローバル変数 (object) $wpdb を使用します。

変更履歴

バージョン 2.3.0 にて導入されました。

ソースファイル

get_objects_in_term()/wp-includes/taxonomy.php にあります。

タームタグ: is_term(), term_exists(), get_objects_in_term(), get_term(), get_term_by(), get_term_children(), get_term_link(), get_terms(), get_the_terms(), get_the_term_list(), has_term(), sanitize_term(), the_terms(), get_object_taxonomies() is_object_in_taxonomy() the_taxonomies() wp_get_object_terms(), wp_set_object_terms(), wp_get_post_terms(), wp_set_post_terms(), wp_delete_object_term_relationships()


関数リファレンステンプレートタグ目次もご覧ください。


最新英語版: WordPress Codex » Function Reference/get objects in term最新版との差分