term_is_ancestor_of() – Check if a term is an ancestor of another term.

You appear to be a bot. Output may be restricted

Description

Checks if a term is an ancestor of another term.

You can use either an ID or the term object for both parameters.

Usage

$bool = term_is_ancestor_of( $term1, $term2, $taxonomy );

Parameters

$term1
( int|object ) required – ID or object to check if this is the parent term.
$term2
( int|object ) required – The child term.
$taxonomy
( string ) required – Taxonomy name that $term1 and $term2 belong to.

Returns

bool Whether $term2 is a child of `$term1`.

Source

File name: wordpress/wp-includes/taxonomy.php
Lines:

1 to 17 of 17
function term_is_ancestor_of( $term1, $term2, $taxonomy ) {
  if ( ! isset( $term1->term_id ) ) {
    $term1 = get_term( $term1, $taxonomy );
  }
  if ( ! isset( $term2->parent ) ) {
    $term2 = get_term( $term2, $taxonomy );
  }

  if ( empty( $term1->term_id ) || empty( $term2->parent ) ) {
    return false;
  }
  if ( $term2->parent === $term1->term_id ) {
    return true;
  }

  return term_is_ancestor_of( $term1, get_term( $term2->parent, $taxonomy ), $taxonomy );
}
 

 View on GitHub View on Trac