get_the_term_list( int $post_id, string $taxonomy, string $before = '', string $sep = '', string $after = '' ): string|false|WP_Error
Retrieves a post’s terms as a list with specified format.
Contents
Description
Terms are linked to their respective term listing pages.
Parameters
-
$post_id
int Required -
Post ID.
-
$taxonomy
string Required -
Taxonomy name.
-
$before
string Optional -
String to use before the terms.
Default:
''
-
$sep
string Optional -
String to use between the terms.
Default:
''
-
$after
string Optional -
String to use after the terms.
Default:
''
Return
string|false|WP_Error A list of terms on success, false if there are no terms, WP_Error on failure.
Source
File: wp-includes/category-template.php
.
View all references
function get_the_term_list( $post_id, $taxonomy, $before = '', $sep = '', $after = '' ) {
$terms = get_the_terms( $post_id, $taxonomy );
if ( is_wp_error( $terms ) ) {
return $terms;
}
if ( empty( $terms ) ) {
return false;
}
$links = array();
foreach ( $terms as $term ) {
$link = get_term_link( $term, $taxonomy );
if ( is_wp_error( $link ) ) {
return $link;
}
$links[] = '<a href="' . esc_url( $link ) . '" rel="tag">' . $term->name . '</a>';
}
/**
* Filters the term links for a given taxonomy.
*
* The dynamic portion of the hook name, `$taxonomy`, refers
* to the taxonomy slug.
*
* Possible hook names include:
*
* - `term_links-category`
* - `term_links-post_tag`
* - `term_links-post_format`
*
* @since 2.5.0
*
* @param string[] $links An array of term links.
*/
$term_links = apply_filters( "term_links-{$taxonomy}", $links ); // phpcs:ignore WordPress.NamingConventions.ValidHookName.UseUnderscores
return $before . implode( $sep, $term_links ) . $after;
}
Hooks
-
apply_filters( "term_links-{$taxonomy}",
string[] $links ) -
Filters the term links for a given taxonomy.
Changelog
Version | Description |
---|---|
2.5.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.
You can use this function with
strip_tags
function to print not linked term list:This prints something like this:
Designer, Front-end Developer, Developer
Top ↑
Feedback
WordPress coding standards suggest that instead of `strip_tags` we should use the more comprehensive `wp_strip_all_tags` instead. — By hanopcan —
Basic Example
Used inside the loop this outputs the terms from the people taxonomy for a specific post.
This would return something like.
Returning an HTML List
Used inside the loop this outputs the terms from the styles taxonomy for a specific post as an (x)html list.
This would return something like.