Alert: This function’s access is marked private. This means it is not intended for use by plugin or theme developers, only in other core functions. It is listed here for completeness.
_get_term_hierarchy() WordPress Function
The get_term_hierarchy() function is used to get an array of all the terms in a given taxonomy, ordered by their hierarchy. This is useful for displaying a list of terms in a hierarchical order.
_get_term_hierarchy( string $taxonomy ) #
Retrieves children of taxonomy as term IDs.
Parameters
- $taxonomy
(string)(Required)Taxonomy name.
Return
(array) Empty if $taxonomy isn't hierarchical or returns children as term IDs.
Source
File: wp-includes/taxonomy.php
function _get_term_hierarchy( $taxonomy ) {
if ( ! is_taxonomy_hierarchical( $taxonomy ) ) {
return array();
}
$children = get_option( "{$taxonomy}_children" );
if ( is_array( $children ) ) {
return $children;
}
$children = array();
$terms = get_terms(
array(
'taxonomy' => $taxonomy,
'get' => 'all',
'orderby' => 'id',
'fields' => 'id=>parent',
'update_term_meta_cache' => false,
)
);
foreach ( $terms as $term_id => $parent ) {
if ( $parent > 0 ) {
$children[ $parent ][] = $term_id;
}
}
update_option( "{$taxonomy}_children", $children );
return $children;
}
Expand full source codeCollapse full source codeView on TracView on GitHub
Changelog
| Version | Description |
|---|---|
| 2.3.0 | Introduced. |