Source View: get_ancestors

To save our bandwidth, we show only a snippet of code around each occurence of the hook. View complete file in SVN (without highlighting).

Understanding Source Code

The best way to understand what a hook does is to look at where it occurs in the source code.

  • Action hooks look like this: do_action( "hook_name" )
  • Filter hooks look like this: apply_filters( "hook_name", "what_to_filter" ).

Remember, this hook may occur in more than one file. Moreover, the hook's context may change from version to version.

Source View

This hook occurs 2 times in this file.

Line Code
3373  * @param string $object_type The type of object for which we'll be retrieving ancestors.
3374  * @return array of ancestors from lowest to highest in the hierarchy.
3375  */
3376 function get_ancestors($object_id = 0, $object_type = '') {
3377      $object_id = (int) $object_id;
3378
3379      $ancestors = array();
3380
3381      if ( empty( $object_id ) ) {
3382           return apply_filters('get_ancestors', $ancestors, $object_id, $object_type);
3383      }
3384
3385      if ( is_taxonomy_hierarchical( $object_type ) ) {
3386           $term = get_term($object_id, $object_type);
3387           while ( ! is_wp_error($term) && ! empty( $term->parent ) && ! in_array( $term->parent, $ancestors ) ) {
3388                $ancestors[] = (int) $term->parent;
3389                $term = get_term($term->parent, $object_type);
3390           }
3391      } elseif ( post_type_exists( $object_type ) ) {
3392           $ancestors = get_post_ancestors($object_id);
3393      }
3394
3395      return apply_filters('get_ancestors', $ancestors, $object_id, $object_type);
3396 }
3397
3398 /**
3399  * Returns the term's parent's term_ID
3400  *
3401  * @since 3.1.0
3402  *
3403  * @param int $term_id
3404  * @param string $taxonomy