get_ancestors

(3.1.0以降)
get_ancestors - 先祖のIDをまとめて取得する

説明

array get_ancestors( [ int $object_id = 0 [ , string $object_type = '' [ , string $resource_type = '' ] ] ] )
先祖のIDをまとめて取得する。

パラメータ

  • $object_id
    タームIDまたは投稿IDを指定(省略時は0)。
  • $object_type
    タクソノミー名または投稿タイプを指定(省略時は'')。
  • $resource_type
    [4.1.0]'taxonomy'または'post_type'を指定(省略時は'')。

返り値

先祖のIDが格納された配列を返す。

注意

タームまたは投稿情報の先祖を遡り、それらのIDをまとめて取得する。なお投稿情報のIDについては、本関数内でも使用されているget_post_ancestors関数があるので、基本的にはターム向けの関数といえるだろう。

パラメータ$resource_typeは4.1.0から追加されたもので、省略時はパラメータ$object_typeにより、'taxonomy'または'post_type'のいずれかが適用される。なお4.1.0時点では片方のフィルター呼び出しにて$resource_typeが記載されていないので要注意(4.1.1で修正済み)。

使用例

  • $term_idの先祖のIDをまとめて取得する。
    <?php $ancestors = get_ancestors( $term_id ); ?>
  • $term_idの先祖のIDをまとめて取得する。
    <?php $ancestors = get_ancestors( $cat_id, 'category' ); ?>

フィルター

[3.1.0]先祖のIDが格納された配列を返す前に'get_ancestors'フィルターを呼び出す。パラメータ$ancestorsには先祖のIDが格納された配列が、その他のパラメータは本関数が受け取った内容が格納される。
return apply_filters( 'get_ancestors', $ancestors, $object_id, $object_type, $resource_type );

アクション

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

ソースファイル

/wp-includes/taxonomy.php

関連

お勧めコンテンツ

各投稿記事で設定されているカスタムフィールドの値を取得するには(2011年9月16日 登録)

投稿記事ごとに設定されているカスタムフィールドの値はget_post_meta関数で取得できるが、すべての投稿記事で設定されているカスタムフィールドの値を一覧を取得する関数が見当たらない。カテゴリーや投稿タグのようにそれぞれの値と実際に使用されている投稿記事件数を取得したいのだが、探し方が悪いのか見つからないのだ。

プラグインで注意が必要な関数(2013年11月27日 登録)

先日「Login rebuilder」という自作プラグインをアップデートした際、ユーザーさんからエラーになると連絡をいただいた。標準環境では問題なく、どうやら何らかのプラグインが影響しているらしい。

初期化に関連するアクションのおさらい(2012年8月7日 登録)

いつも何気なくfunctions.phpで使っているafter_setup_themeアクションやinitアクション。普段はあまり意識していなかったが、ふとしたことからどんな順番に呼び出されるのか気になってしまい、ちょっと調べてみた。

WP_Postオブジェクトで投稿情報を直感的に使う(2012年10月4日 登録)

WordPress 3.5で登場するであろうWP_Postクラス。WordPressの投稿情報は、投稿情報本体のほか、カテゴリーや投稿タグ、カスタムフィールドなど、いくつかに分散して記録され、それぞれの情報を取得する際は、いくつかの関数をしていた。新しいWP_Postクラスにより、その習慣とおさらばできるかもしれない。

投稿ページでユニークなテンプレートを選択しよう(2016年12月19日 登録)

4.7の変更点に「投稿タイプテンプレート」がある。これは従来固定ページ('page')向けに任意のテンプレートを適用できる機能が拡張されたもので、投稿ページ('post')はもちろんカスタム投稿タイプのページにも適用可能になっている。

最終更新日時 : 2015-02-23 11:40