You can fully inject any customizations to the query before it is sent, as well as control the output with a filter.
The ‘get_terms’ filter will be called when the cache has the term and will pass the found term along with the array of $taxonomies and array of $args. This filter is also called before the array of terms is passed and will pass the array of terms, along with the $taxonomies and $args.
The ‘list_terms_exclusions’ filter passes the compiled exclusions along with the $args.
The ‘get_terms_orderby’ filter passes the
ORDER BY clause for the query along with the $args array.
Prior to 4.5.0, the first parameter of
get_terms() was a taxonomy or list of taxonomies:
$terms = get_terms( 'post_tag', array( 'hide_empty' => false, ) );
Since 4.5.0, taxonomies should be passed via the ‘taxonomy’ argument in the
$terms = get_terms( array( 'taxonomy' => 'post_tag', 'hide_empty' => false, ) );