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

関連

お勧めコンテンツ

サイドバーの初期化はwidgets_initアクションで(2011年7月14日 登録)

ウィジェットを使ってみたくなり新テーマ「Twenty Eleven」を覗いてみると、codexに記載されていた内容と少し違っている。これって「Twenty Ten」ですでに変更されていたんだね。

WordPressと組み込まれている主なJavaScriptライブラリのバージョン一覧(2015年4月10日 登録)

WordPressの更新が遅れていたサイトを少し前に更新したところ、jQuery UI sortableを使って拡張したページに不具合が発生しました。WordPressの更新に伴って内部のjQuery UIが更新されたことに起因すると思われ、これを機にWordPressとそれに組み込まれたJavaScriptライブラリのバージョンを確認してみました。

the_date関数で投稿日を確実に表示する(2011年12月20日 登録)

投稿記事の投稿日時を表示する際、the_date関数を使用することが多いだろう。このthe_date関数はphpのdate関数と同じパラメータを指定することで、好みの日時フォーマットで投稿日時を表示できるのだが、ある条件の場合に投稿日時を表示しない。最初にこの現象に遭遇したときは、ちょっと悩まされた。

投稿情報を連想配列で参照する(2014年11月16日 登録)

投稿情報は、タイトルや本文、投稿日時といったいくつかのデータが含んでおり、多くの場合オブジェクトになっている。これを連想配列で扱いたい場合はキャストして型変換することが多かった。基本的にはキャストで問題ないのだが、ふと目に留まったto_arrayメソッドが興味深かったのでメモとして残しておく。

もうquery_postsは呼ばない(2011年9月27日 登録)

トップページやカテゴリーページで標準の条件に少し手を加えた投稿情報を表示するケースがある。そんな時、テンプレートファイルの先頭でquery_posts関数を呼び出して投稿情報を再抽出していたのだが、フィルター処理をうまく使えばquery_posts関数を呼び出さなくても大丈夫みたいだ。

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