On this page
get_term_feed_link( int|WP_Term|object $term, string $taxonomy = '', string $feed = '' ): string|false
Retrieves the feed link for a term.
Description
Returns a link to the feed for all posts in a given term. A specific feed can be requested or left blank to get the default feed.
Parameters
$termint|WP_Term|object Required-
The ID or term object whose feed link will be retrieved.
$taxonomystring Optional-
Taxonomy of
$term_id.Default:
'' $feedstring Optional-
Feed type. Possible values include
'rss2','atom'.
Default is the value of get_default_feed() .Default:
''
Return
string|false Link to the feed for the term specified by $term and $taxonomy.
Source
File: wp-includes/link-template.php. View all references
function get_term_feed_link( $term, $taxonomy = '', $feed = '' ) {
if ( ! is_object( $term ) ) {
$term = (int) $term;
}
$term = get_term( $term, $taxonomy );
if ( empty( $term ) || is_wp_error( $term ) ) {
return false;
}
$taxonomy = $term->taxonomy;
if ( empty( $feed ) ) {
$feed = get_default_feed();
}
$permalink_structure = get_option( 'permalink_structure' );
if ( ! $permalink_structure ) {
if ( 'category' === $taxonomy ) {
$link = home_url( "?feed=$feed&cat=$term->term_id" );
} elseif ( 'post_tag' === $taxonomy ) {
$link = home_url( "?feed=$feed&tag=$term->slug" );
} else {
$t = get_taxonomy( $taxonomy );
$link = home_url( "?feed=$feed&$t->query_var=$term->slug" );
}
} else {
$link = get_term_link( $term, $term->taxonomy );
if ( get_default_feed() == $feed ) {
$feed_link = 'feed';
} else {
$feed_link = "feed/$feed";
}
$link = trailingslashit( $link ) . user_trailingslashit( $feed_link, 'feed' );
}
if ( 'category' === $taxonomy ) {
/**
* Filters the category feed link.
*
* @since 1.5.1
*
* @param string $link The category feed link.
* @param string $feed Feed type. Possible values include 'rss2', 'atom'.
*/
$link = apply_filters( 'category_feed_link', $link, $feed );
} elseif ( 'post_tag' === $taxonomy ) {
/**
* Filters the post tag feed link.
*
* @since 2.3.0
*
* @param string $link The tag feed link.
* @param string $feed Feed type. Possible values include 'rss2', 'atom'.
*/
$link = apply_filters( 'tag_feed_link', $link, $feed );
} else {
/**
* Filters the feed link for a taxonomy other than 'category' or 'post_tag'.
*
* @since 3.0.0
*
* @param string $link The taxonomy feed link.
* @param string $feed Feed type. Possible values include 'rss2', 'atom'.
* @param string $taxonomy The taxonomy name.
*/
$link = apply_filters( 'taxonomy_feed_link', $link, $feed, $taxonomy );
}
return $link;
}
Hooks
- apply_filters( 'category_feed_link',
string $link ,string $feed ) -
Filters the category feed link.
- apply_filters( 'tag_feed_link',
string $link ,string $feed ) -
Filters the post tag feed link.
- apply_filters( 'taxonomy_feed_link',
string $link ,string $feed ,string $taxonomy ) -
Filters the feed link for a taxonomy other than ‘category’ or ‘post_tag’.
Related
Uses
| Uses | Description |
|---|---|
| get_term_link() wp-includes/taxonomy.php | Generates a permalink for a taxonomy term archive. |
| user_trailingslashit() wp-includes/link-template.php | Retrieves a trailing-slashed string if the site is set for adding trailing slashes. |
| get_default_feed() wp-includes/feed.php | Retrieves the default feed. |
| trailingslashit() wp-includes/formatting.php | Appends a trailing slash. |
| get_term() wp-includes/taxonomy.php | Gets all term data from database by term ID. |
| get_taxonomy() wp-includes/taxonomy.php | Retrieves the taxonomy object of $taxonomy. |
| home_url() wp-includes/link-template.php | Retrieves the URL for the current site where the front end is accessible. |
| apply_filters() wp-includes/plugin.php | Calls the callback functions that have been added to a filter hook. |
| get_option() wp-includes/option.php | Retrieves an option value based on an option name. |
| is_wp_error() wp-includes/load.php | Checks whether the given variable is a WordPress Error. |
Used By
| Used By | Description |
|---|---|
| Walker_Category::start_el() wp-includes/class-walker-category.php | Starts the element output. |
| feed_links_extra() wp-includes/general-template.php | Displays the links to the extra feeds such as category feeds. |
| get_tag_feed_link() wp-includes/link-template.php | Retrieves the permalink for a tag feed. |
| get_category_feed_link() wp-includes/link-template.php | Retrieves the feed link for a category. |
Changelog
| Version | Description |
|---|---|
| 3.0.0 | Introduced. |
© 2003–2022 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/get_term_feed_link