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

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

関数リファレンス/get ancestors

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

指定されたオブジェクトの祖先オブジェクトの配列を返します。祖先オブジェクトの種類を第2引数で指定します。カスタム投稿タイプやカスタムタクソノミーの場合は第3引数も使います。

使い方

<?php get_ancestors( $object_id, $object_type, $resource_type ); ?>

デフォルトの使い方

<?php $ancestors = get_ancestors( 6, 'page' ); ?>

パラメータ

$object_id
整数 または 文字列) (必須) 子オブジェクトの ID。
初期値: なし
$object_type
文字列) (オプション) 祖先オブジェクトの種類。
初期値: なし
  • 'page' - 固定ページ
  • 'category' - カテゴリー
  • その他階層を持った投稿タイプ、階層を持ったタクソノミーが指定できます。
$resource_type
文字列) (オプション$object_type の種類。
初期値: なし
  • 'post_type' - カスタム投稿タイプ
  • 'taxonomy' - カスタムタクソノミー
  • 省略すると $object_type を調べて自動設定します。

戻り値

配列 
祖先オブジェクトの ID の配列を返します。配列の並びは階層の下から上の順で、インデックス [0] はすぐ上の親オブジェクトの ID です。ID に対応するオブジェクトが親を持たない、または存在しない場合、空の配列を返します。

用例

カテゴリー

次のような階層のカテゴリーがあるとします(番号は ID)。

  6. 本
    23. フィクション
      108. SF
      208. ミステリー
        801. 温泉
        1011. 電車
    25. 実話

次のコードを実行すると

<?php $ancestors_ids = get_ancestors( 801, 'category' ); ?>

次の値が返されます。

  Array (
    [0] => 208
    [1] => 23
    [2] => 6
  )

固定ページ

次のような階層の固定ページがあるとします(番号は ID)。

  自己紹介 (9)
    作品 (447)
      写真 (448)

次のコードを実行すると

<?php $ancestors_ids = get_ancestors( 448, 'page' ); ?>

次の値が返されます。

  Array (
    [0] => 447
    [1] => 9
  )

参考

  • 祖先オブジェクト ID の配列を返す前に、get_ancestors フィルターを適用します。

変更履歴

  • 4.1.0 : パラメータ $resource_type を導入しました。
  • 3.1.0 : 新規導入

ソースファイル

get_ancestors()wp-includes/taxonomy.php に含まれています。

固定ページ: get_all_page_ids(), get_ancestors(), get_page_link(), get_page_by_path(), get_page_by_title(), get_page_children(), get_page_hierarchy(), get_page_uri() /en, get_pages(), is_page(), page_uri_index() /en, wp_list_pages(), wp_page_menu()


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


最新英語版: WordPress Codex » Function Reference/get_ancestors最新版との差分