wp_get_object_terms

説明

mixed wp_get_object_terms( mixed $object_ids, mixed $taxonomies [ , array $args = array() ] )
投稿記事などのタクソノミー情報を取得する。

パラメータ

  • $object_ids
    投稿記事などのオブジェクトID(数値)を指定。複数指定する場合はその配列を指定する。
  • $taxonomies
    'category'、'post_tag'などのタクソノミー名を指定。複数指定する場合はその配列を指定する。
  • $args
    取得するタクソノミー情報の条件を連想配列で指定(省略時はarray())。
    キーワード意味
    orderbyソート対象を示すcount、name、slug、term_group、term_order、noneなど(省略時は'name':名前)
    orderソート順を示すASCかDESC(省略時はDESC)
    fields取得する項目を示すall、ids、names、all_with_object_idなど(省略時はall)

返り値

マッチしたすべてのタクソノミー情報が格納された配列を返す。パラメータ$taxonomiesで指定された名前が無効な場合などのエラー時には WP_Errorのオブジェクトを返す。タクソノミー情報のプロパティは次の通り。
プロパティ名データ型意味
term_idintID
namestring名前
slugstringスラッグ
term_groupintグループID
term_taxonomy_idintタクソノミーID
taxonomystringタクソノミー名。カテゴリーの場合は'category'、タグの場合は'post_tag'となる
descriptionstring説明
parentint親カテゴリーID。親カテゴリーがない場合は0となる
countint投稿数
object_idintオブジェクトID(投稿IDなど)※'fields'で'all_with_object_id'指定時のみ

注意

この関数は、 wp_get_post_terms関数などから呼び出されるなど、同系列の関数の中では低レベルの関数となる。オブジェクトIDを複数指定できるほか、カテゴリー情報と投稿タグ情報を同時に取得できる。

使用例

  • 投稿IDが1の投稿タグ情報を取得する。
    <?php $terms = wp_get_object_terms( 1, 'post_tag' ); ?>
  • 投稿IDが1と2のカテゴリー情報と投稿タグ情報を取得する。
    <?php $terms = wp_get_object_terms( array( 1, 2 ), array( 'category', 'post_tag' ) ); ?>
  • 投稿IDが1と2のカテゴリー情報と投稿タグ情報をオブジェクトID付きで取得する。
    <?php $terms = wp_get_object_terms( array( 1, 2 ), array( 'category', 'post_tag' ), array( 'fields'=>'all_with_object_id' ) ); ?>

フィルター

[4.9.0]ターム情報を取得する前に'wp_get_object_terms_args'フィルターを呼び出す。パラメータ$argsには本関数が受け取った同名パラメータを解析した内容が、$object_idsには数値化されたタームIDの配列が、$taxonomiesにはタクソノミー名の配列が格納されている。
$args = apply_filters( 'wp_get_object_terms_args', $args, $object_ids, $taxonomies );
[4.2.0]ターム情報を取得した後に'get_object_terms'フィルターを呼び出す。パラメータ$termsには取得したターム情報の配列が、$object_idsには数値化されたタームIDの配列が、$taxonomiesにはタクソノミー名の配列が、$argsには解析済みの内容に'taxonomy'と'object_ids'キーを追加したものが格納されている。
$terms = apply_filters( 'get_object_terms', $terms, $object_ids, $taxonomies, $args );
[2.8.0]取得したターム情報を返す前に'wp_get_object_terms'フィルターを呼び出す。パラメータ$termsには取得したターム情報の配列が、$object_idsには','で連結したタームIDの文字列が、$taxonomiesには', 'で連結したタクソノミー名をさらに','で囲んだ文字列が、$argsには解析済みの内容に'taxonomy'と'object_ids'キーを追加したものが格納されている。
return apply_filters( 'wp_get_object_terms', $terms, $object_ids, $taxonomies, $args );

アクション

実行するアクションはありません。

ソースファイル

/wp-includes/taxonomy.php

最終更新 : 2017年11月30日 10:50



お勧め

カスタムフィールド関連関数のおさらい(2012年6月22日 更新)

カスタムフィールドは、投稿記事の拡張情報としてよく利用されている。投稿ページで登録した情報をアーカイブや投稿ページで表示しているが、投稿ページを表示する際にカスタムフィールドの値を更新して、サイドバーのようなページ内要素に利用したりしている。

MOファイルを作ってみた(2018年7月25日 更新)

テーマやプラグインで使用するMOファイルはWindows環境では「Poedit」アプリを使うことが多かったが、最近では「GlotPress」のようなプラグインも増えてきており、選択肢は広がっている。定期的に開発環境を見直す過程で「Poedit」から「GlotPress」に切り替えようと思ったのだが、微妙にしっくりこなかった。

日本語名のユーザーを登録する(2018年5月27日 更新)

標準のログインID(ユーザー名)は、英数字と一部の記号の組み合わせで構成されている。一般的なシステムのログインIDはおおむねこんな感じだが、ふと「インターネット環境ならログインIDに日本語が使用できてもいいんじゃないか」と思い、実現できるか調べてみた。

ショートコードを使ってテーマ内の画像URLを簡単に指定する(2018年5月27日 更新)

投稿記事の中で画像パーツを使いたいときがある。画像パーツの配置場所は、/imgディレクトリのようなテーマ外の場合と、/wp-content/themes/mytheme/imagesディレクトリのようなテーマ内の場合があり、今回は後者のケース。ショートコードを使って投稿記事の画像ファイルのURLを記述する方法を紹介したい。

HTML entities button:プラグイン作ってみました(2017年12月17日 更新)

以前投稿した「HTML編集モードに定型文ボタンを追加する」をアレンジして、HTML編集モードに特殊文字(HTMLエンティティ)を挿入できるボタン、顔文字を挿入できるボタン、過去の投稿ページのリンクを挿入できるボタンを追加するプラグインを作ってみました。HTML編集モードの作業効率を向上させるプラグインです。2.1.0では「Dashiconsの挿入」を追加しました。HTML編集モードをメインに使用されている方は、お試しあれ。