feed_links_extra( array $args = array() )
Display the links to the extra feeds such as category feeds.
Description Description
Parameters Parameters
- $args
-
(array) (Optional) arguments.
Default value: array()
Source Source
File: wp-includes/general-template.php
function feed_links_extra( $args = array() ) { $defaults = array( /* translators: Separator between blog name and feed type in feed links. */ 'separator' => _x( '»', 'feed link' ), /* translators: 1: Blog name, 2: Separator (raquo), 3: Post title. */ 'singletitle' => __( '%1$s %2$s %3$s Comments Feed' ), /* translators: 1: Blog name, 2: Separator (raquo), 3: Category name. */ 'cattitle' => __( '%1$s %2$s %3$s Category Feed' ), /* translators: 1: Blog name, 2: Separator (raquo), 3: Tag name. */ 'tagtitle' => __( '%1$s %2$s %3$s Tag Feed' ), /* translators: 1: Blog name, 2: Separator (raquo), 3: Term name, 4: Taxonomy singular name. */ 'taxtitle' => __( '%1$s %2$s %3$s %4$s Feed' ), /* translators: 1: Blog name, 2: Separator (raquo), 3: Author name. */ 'authortitle' => __( '%1$s %2$s Posts by %3$s Feed' ), /* translators: 1: Blog name, 2: Separator (raquo), 3: Search query. */ 'searchtitle' => __( '%1$s %2$s Search Results for “%3$s” Feed' ), /* translators: 1: Blog name, 2: Separator (raquo), 3: Post type name. */ 'posttypetitle' => __( '%1$s %2$s %3$s Feed' ), ); $args = wp_parse_args( $args, $defaults ); if ( is_singular() ) { $id = 0; $post = get_post( $id ); if ( comments_open() || pings_open() || $post->comment_count > 0 ) { $title = sprintf( $args['singletitle'], get_bloginfo( 'name' ), $args['separator'], the_title_attribute( array( 'echo' => false ) ) ); $href = get_post_comments_feed_link( $post->ID ); } } elseif ( is_post_type_archive() ) { $post_type = get_query_var( 'post_type' ); if ( is_array( $post_type ) ) { $post_type = reset( $post_type ); } $post_type_obj = get_post_type_object( $post_type ); $title = sprintf( $args['posttypetitle'], get_bloginfo( 'name' ), $args['separator'], $post_type_obj->labels->name ); $href = get_post_type_archive_feed_link( $post_type_obj->name ); } elseif ( is_category() ) { $term = get_queried_object(); if ( $term ) { $title = sprintf( $args['cattitle'], get_bloginfo( 'name' ), $args['separator'], $term->name ); $href = get_category_feed_link( $term->term_id ); } } elseif ( is_tag() ) { $term = get_queried_object(); if ( $term ) { $title = sprintf( $args['tagtitle'], get_bloginfo( 'name' ), $args['separator'], $term->name ); $href = get_tag_feed_link( $term->term_id ); } } elseif ( is_tax() ) { $term = get_queried_object(); if ( $term ) { $tax = get_taxonomy( $term->taxonomy ); $title = sprintf( $args['taxtitle'], get_bloginfo( 'name' ), $args['separator'], $term->name, $tax->labels->singular_name ); $href = get_term_feed_link( $term->term_id, $term->taxonomy ); } } elseif ( is_author() ) { $author_id = intval( get_query_var( 'author' ) ); $title = sprintf( $args['authortitle'], get_bloginfo( 'name' ), $args['separator'], get_the_author_meta( 'display_name', $author_id ) ); $href = get_author_feed_link( $author_id ); } elseif ( is_search() ) { $title = sprintf( $args['searchtitle'], get_bloginfo( 'name' ), $args['separator'], get_search_query( false ) ); $href = get_search_feed_link(); } elseif ( is_post_type_archive() ) { $title = sprintf( $args['posttypetitle'], get_bloginfo( 'name' ), $args['separator'], post_type_archive_title( '', false ) ); $post_type_obj = get_queried_object(); if ( $post_type_obj ) { $href = get_post_type_archive_feed_link( $post_type_obj->name ); } } if ( isset( $title ) && isset( $href ) ) { echo '<link rel="alternate" type="' . feed_content_type() . '" title="' . esc_attr( $title ) . '" href="' . esc_url( $href ) . '" />' . "\n"; } }
Expand full source code Collapse full source code View on Trac
Changelog Changelog
Version | Description |
---|---|
2.8.0 | Introduced. |