Languages: English • Português do Brasil • 한국어 • (Add your language)
If terms like feed, syndication, and RSS make your head spin, stop right now and read an Introduction to Syndication. That will give you a good overview of feeds and syndication. We have an article on WordPress Feeds to help you understand the basics, if you need them, but from here on, this article assumes that you know the basics of what feeds are and how they are used.
Customized feeds give your readers more information about you and your blog: you can include the names of additional collaborators on your blog posts, or a link to your Friend-of-a-Friend file. Contrariwise, it can also help you restrict the information available for syndication, by removing extraneous data or providing a machine-readable version of your copyright statement.
WordPress uses a set of feed templates to display your site's feeds, in much the same way as it uses theme templates to display your content. These feed templates are located in the wp-includes WordPress directory. These core files are not directly compatible with the Theme system, however it is possible to use custom page templates to achieve a theme-based solution (see further information and links below) or change which templates are used.
The following feed templates are included with WordPress:
There are a variety of ways to customize your feeds, through the use of third-party software you install and add-on to your WordPress site, or by manually changing the feed templates to meet your needs.
Editing your feed templates is much the same as editing your theme templates. However, feed templates are not integrated into the WordPress theme system; if you would like different versions of your feeds, you'll need to create extra feed templates.
The Feed templates are located in the /wp-includes/feed-{type}.php files and include formats for rdf, rss, rss2 and atom. They are triggered by feed rewrite rules using a series of actions defined in wp-includes/functions.php
and attached using add_action in wp-includes/default-filters.php
.
In order to override with your own templates it will be required to clear the default actions, then take appropriate steps to call get_template_part.
An example of using a template for the default RSS2 feed as well as a custom post type named "photos":
/** * Deal with the custom RSS templates. */ function my_custom_rss() { if ( 'photos' === get_query_var( 'post_type' ) ) { get_template_part( 'feed', 'photos' ); } else { get_template_part( 'feed', 'rss2' ); } } remove_all_actions( 'do_feed_rss2' ); add_action( 'do_feed_rss2', 'my_custom_rss', 10, 1 );
Many specialized template tags exist specifically to format your content in a way that complies with the RSS standards. They include:
Some third-party web services can help you manage and customize your feeds. Using such services can be a simple way to do things like counting the number of people who read your feed, or combining your blog's feed with your Flickr photostream.
Such services include:
To see your new feed, you can use any of the many feed readers available on the Internet. While your feed might look good to you in the different readers, it might still have problems.
Feed formats are designed to be read and manipulated by machines; errors in your feed template can make your feed unreadable to some or all feedreaders. So after you make all your changes, it's a good idea to check that your feed meets the relevant standards. Validation services include: