描述
Returns an array containing the parents of the given object.
用法
<?php get_ancestors( $object_id, $object_type ); ?>
Default Usage
<?php $ancestors = get_ancestors( 6, 'page' ); ?>
参数
$object_id
(int or string) (必填) The ID of the child object
默认值: None
$object_type
(string) (必填) The name of the object type (page, hierarchical post type, category, or hierarchical taxonomy) in question
默认值: None
返回值
(array)
Array of ancestors from lowest to highest in the hierarchy
示例
Given the following category hierarchy (with IDs):
Books (6)
Fiction (23)
Mystery (208)
1 |
/* ———————————- <?php get_ancestors( 208, ‘category’ ); ?> |
returns:
Array
(
[0] => 23
[1] => 6
)
Given the a page hierarchy (with IDs):
About (447)
Child Page (448)
1 |
/* ———————————- <?php get_ancestors( 448, ‘page’ ); ?> |
returns:
Array
(
[0] => 447
)
注意
Filter: get_ancestors is applied to ancestors array before it is returned.
历史
添加于 版本: 3.1.0
源文件
get_ancestors() 函数的代码位于 wp-includes/taxonomy.php
.
1 |
/* ———————————- function get_ancestors( $object_id = 0, $object_type = ”, $resource_type = ” ) { $object_id = (int) $object_id; $ancestors = array(); if ( empty( $object_id ) ) { /** This filter is documented in wp-includes/taxonomy.php */ return apply_filters( ‘get_ancestors’, $ancestors, $object_id, $object_type, $resource_type ); } if ( ! $resource_type ) { if ( is_taxonomy_hierarchical( $object_type ) ) { $resource_type = ‘taxonomy’; } elseif ( post_type_exists( $object_type ) ) { $resource_type = ‘post_type’; } } if ( ‘taxonomy’ === $resource_type ) { $term = get_term($object_id, $object_type); while ( ! is_wp_error($term) && ! empty( $term->parent ) && ! in_array( $term->parent, $ancestors ) ) { $ancestors[] = (int) $term->parent; $term = get_term($term->parent, $object_type); } } elseif ( ‘post_type’ === $resource_type ) { $ancestors = get_post_ancestors($object_id); } /** * Filter a given object’s ancestors. return apply_filters( ‘get_ancestors’, $ancestors, $object_id, $object_type, $resource_type ); } |
相关
Page Tags: get_all_page_ids(),
get_ancestors(),
get_page(),
get_page_link(),
get_page_by_path(),
get_page_by_title(),
get_page_children(),
get_page_hierarchy(),
get_page_uri(),
get_pages(),
is_page(),
page_uri_index(),
wp_list_pages(),
wp_page_menu()
原文:http://codex.wordpress.org/Function_Reference/get_ancestors