Outil de recherche WordPress pour les développeurs et auteurs de thèmes



term_is_ancestor_of ›

Depuis3.4.0
Dépréciéen/a
term_is_ancestor_of ( $term1, $term2, $taxonomy )
Paramètres: (3)
  • (int|object) $term1 ID or object to check if this is the parent term.
    Requis: Oui
  • (int|object) $term2 The child term.
    Requis: Oui
  • (string) $taxonomy Taxonomy name that $term1 and `$term2` belong to.
    Requis: Oui
Retourne:
  • (bool) Whether `$term2` is a child of `$term1`.
Défini(e) dans:
Codex:

Check if a term is an ancestor of another term.

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



Source

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 );
}