A feed is a function of special software that allows feedreaders to access a site, automatically looking for new content and then posting the information about new content and updates to another site. This provides a way for users to keep up with the latest and hottest information posted on different blogging sites.
There are several different kinds of feeds, read by different feedreaders. Some feeds include RSS (alternately defined as "Rich Site Summary" or "Really Simple Syndication"), Atom or RDF files.
By default, WordPress comes with various feeds. They are generated by template tag for bloginfo() for each type of feed and are typically listed in the sidebar and/or footer of most WordPress Themes. They look like this:
The first four feeds display recent updates and changes to your site's content for the different feedreaders. Of these, the RSS feeds are the most well known. The last feed example is used by RSS 2.0 feedreaders and does not show your site's content. It only shows the comments made on your site.
To track the comments on a specific post, the comments_rss_link() template tag is used on single post pages like this:
<?php comments_rss_link('RSS 2.0'); ?>
There are ways to modify these feeds, and these are covered in the article on Customizing Feeds.
There are times when you want to tell someone your site's feed address or URL, or you need it to submit it to search engines and directories, many of which now accept feed URL submissions. There are four possible URLs for each of your feeds. Any of these will work.
http://example.com/?feed=rss http://example.com/?feed=rss2 http://example.com/?feed=rdf http://example.com/?feed=atom
If you are using custom permalinks, you should be able to reach them through this usage:
http://example.com/feed/ http://example.com/feed/rss/ http://example.com/feed/rss2/ http://example.com/feed/rdf/ http://example.com/feed/atom/
Your site has feeds for all comments on the site, and each post has its own comment feed.
You can also provide feeds to only specific categories or tags on your site by adding the following to the end of the link:
Older versions of Wordpress used a format such as
but this has been deprecated in newer versions.
Every author has an RSS feed for their posts. Here is the format:
Search results can also have their own feed. Here is the format:
Not all WordPress Themes feature all of the RSS Feed types that are available through WordPress. To add a feed to your site, find the location of where the other feeds are, typically in your sidebar.php or footer.php template files of your Theme. Then add one of the tags listed above to the list, like this example:
Many people like to have a graphic representing the feed instead of words. There are now standards for these graphics or "buttons", but you can make your own to match the look and colors on your site.
To add a graphic to your feed link, simply wrap the link around the graphic such as:
If you are currently using other webblog software and are changing to WordPress, or are moving your weblog to a new location, you can "forward" RSS readers to your new RSS feeds using file rewrites and redirects in your .htaccess file.
Edit the .htaccess file in your root folder, if no file exists, create one.
Here is an example for a b2 feed:
RewriteRule ^b2rss2.php(.*)? /wordpress/?feed=rss2 [QSA]
Here is an example for MovableType Users:
RewriteRule ^index.xml(.*)? /wordpress/?feed=rss2 [QSA]
Feed Director provides rewrite rules for common feed filenames used by other blogging platforms, such as index.xml, index.rdf, rss.xml, rss2.xml, atom.xml, *.xml, via an easy-to-use "install it and forget it" plugin.
Wordpress adheres to the RSS specifications. This means that the time and date format will NOT use your blog time/date format as set in your settings, instead it uses the time and date format from the RFC822 specification. This looks for example like this: Sun, 06 Sep 2009 16:10:34 +0000
Note: The time/date format of feed should NOT be localized since the the current RSS specifications are referring to RFC822 specification which specifies English as a default. This implies that every RSS consumer should take care of translating time/date according to its locale.