Feed Autodiscovery Redux

I [recently added][1] the needed markup to enable Feed Autodiscovery on my site. This is the mechanism that powers Firefox’s [Live Bookmarks][2] feature, and allows sofware such as an aggregator to automatically find your feed. At the time, I made the following observation:

For now, every page contains an autodiscovery link for the main RSS feed. However, Blosxom provides RSS feeds for all categories as well (RSS is just another flavour to Blosxom). I could have category indexes provide autodiscovery links to category RSS feeds, but I doubt this is what most users would want.

I’ve never made any attempt to directly publish per-category feeds, although a user in the know could get them due to the nature of Blosxom. RSS is just another flavour as far as Blosxom is concerned. To get a feed for the category X/Y/Z, just pull example.com/weblog/X/Y/X/index.rss and you’re done. By default, your category feed’s title, link, and category will be the same as your main feed. There are many ways to address this with Blosxom; but I was always more concerned with how to offer them. I didn’t really want an orange XML icon next to each category, and a feeds page seems excessive. Autodiscovery makes it easy to only offer the feed that applies to the category being viewed, but it doesn’t make sense to replace your standard feed.

A few days later, I was reading Ben Goodger’s [Inside Firefox][3]. I read [a post about Live Bookmarks][6] in which Ben wrote (emphasis added):

…hope more sites will start using the <link> tag - sites that do, please give your feeds meaningful title attributes! I hate seeing “Subscribe to ‘RSS’” in the popup menu!

This got me thinking, and a couple of days later, I went back and re-read Mark Pilgrim’s [Important change to the link tag][4] article from a couple of years ago, which solidified the autodiscovery mechanism. In it was this bit:

Tips for site authors:

  1. The title does not have to be “RSS”, but keep in mind that some browsers (iCab, Mozilla, Lynx) will expose the title to the end user, so it should be descriptive.
  2. If you have multiple RSS feeds, define one LINK tag for each of them. (I’m doing this now for my category-specific feeds; view-source on diveintomark.org for an example.) Presumably next-generation news aggregators (and the way things have been going, we’re talking maybe by Friday here) will display a list of all available feeds and let the user choose one or more. Give each LINK tag a different title, so users know what they’re selecting.

Mark doesn’t seem to be doing this anymore, but I’ve since seen sites using multiple links to offer multiple formats. I’m using it now to offer category-specific feeds from the category indexes (and from permalinks), alongside the regular feeds. If you’re using Firefox, click a category link on the right and then click the XML statusbar icon to see it in action. The relevant part of the <head> looks like this if you view source:

<link rel="alternate" type="application/rss+xml" 
      title="jclark.org - All Posts (RSS)" 
      href="http://jclark.org/weblog/index.rss" />

<link rel="alternate" type="application/rss+xml" 
      title="jclark.org - All Posts in WebDev/Blogging (RSS) "
      href="http://jclark.org/weblog/WebDev/Blogging/index.rss" />

I accomplished this in my head.html flavour file using my [updated storystate plugin][5] along with interpolate_fancy. The relevant bit:

<link rel="alternate" type="application/rss+xml" 
      title="jclark.org - All Posts (RSS)" 
      href="http://jclark.org/weblog/index.rss" />

<?$storystate::category>
    <link rel="alternate" type="application/rss+xml" 
          title="jclark.org - All Posts in WebDev/Blogging (RSS) " 
          href="http://jclark.org/weblog/WebDev/Blogging/index.rss" />
</?>

<?$storystate::permalink>
    <link rel="alternate" type="application/rss+xml" 
          title="jclark.org - All Posts in WebDev/Blogging (RSS) " 
          href="http://jclark.org/weblog/WebDev/Blogging/index.rss" />
</?>

The only thing left was to fix my head.rss to accomodate category feeds intellegently:

<?$storystate::blogroot>
    <title>jclark.org</title>
    <link>http://jclark.org/weblog</link>
    <description>the weblog at jclark.org - All Posts

You can leave a response, or trackback from your own site.

2 Responses to “Feed Autodiscovery Redux”

  1. Bertilo Wennergren Says:

    Invalid RSS

    It’s seems your RSS is invalid. I can’t really spot the mistake, but Firefox won’t load the Livemark, and Feedvalidator complains as well.

  2. Search Engine Marketing Firm Says:

    Consider the search engine’s index priority

    This is a great tool, and can be used to spread your websites information. However coming from a search engine marketing background I wanted to let you know how this can hurt your search engine rankings. Many inexperienced webmasters and website owners erroneously think that anything on an RSS feed is free information that they can use in their website content. Instead of using an RSS reader, they just copy the content into their website.

    We have had a few clients who have used RSS feed to promote their news articles, only to find that these pages were getting duplicate content from websites that did not use RSS feed, but rather just copied their news articles into their content pages.

    Your site can loose rankings for these pages, and can also loose its reputation in the search engines eyes. So if you are going to let others have access via RSS feed (which is fine) make sure you protect your interests by always checking the web to make sure that your content is only on your pages. If you find it elsewhere, just contact the webmaster and let him know he needs to take it down. Usually they did not do this maliciously, and will take it down right away. If they don’t, you should probably send a cease and desist letter.

Leave a Reply