Redirect WordPress Individual Category Feeds to Feedburner via HTAccess

.htaccess made easy

Time for another Feedburner redirect tutorial! In our previous FeedBurner-redirect post, I provide an improved HTAccess method for redirecting your site’s main feed and comment feed to their respective Feedburner URLs. In this tutorial, we are redirecting individual WordPress category feeds to their respective FeedBurner URLs. We will also look at the complete code required to redirect all of the above: the main feed, comments feed, and of course any number of individual category feeds. Let’s jump into it..

Initial Setup

As we are redirecting our category feeds to their associated FeedBurner URLs, you will first want to make sure that these feeds exist and are accessible. Once you have the URLs of the FeedBurner feeds for your categories, make a list of their associated WordPress categories for easy reference. In addition to this information, you will need:

  • A WordPress-powered blog (with the required categories)
  • An Apache server with the mod_rewrite module enabled
  • Access to to your domain’s root HTAccess file (or to httpd.conf)

For this tutorial, we will assume the following hypothetical WordPress/Feedburner feed URLs:

  • Main feed:
    http://domain.tld/feed/
    == http://feeds.feedburner.com/main-feed
  • Comments feed:
    http://domain.tld/comments/feed/
    == http://feeds.feedburner.com/comments-feed
  • “Business” category feed:
    http://domain.tld/category/business/feed/
    == http://feeds.feedburner.com/business-feed
  • “Pleasure” category feed:
    http://domain.tld/category/pleasure/feed/
    == http://feeds.feedburner.com/pleasure-feed
  • “Nonsense” category feed:
    http://domain.tld/category/nonsense/feed/
    == http://feeds.feedburner.com/nonsense-feed

Redirecting Category Feeds

Here is the generalized HTAccess code that we will be using to redirect our three categories:

# Redirect Wordpress Category Feeds to Feedburner
<IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteCond %{HTTP_USER_AGENT} !^.*(FeedBurner|FeedValidator) [NC]
 RewriteRule ^category/business/feed/?.*$ http://feeds.feedburner.com/business-feed [L,NC,R=302]
 RewriteRule ^category/pleasure/feed/?.*$ http://feeds.feedburner.com/pleasure-feed [L,NC,R=302]
 RewriteRule ^category/nonsense/feed/?.*$ http://feeds.feedburner.com/nonsense-feed [L,NC,R=302]
</IfModule>

That’s the core of this tutorial, right there. The first line checks for the existence of the required Apache module, mod_rewrite, while the second line enables the module (you may remove this line if already included in your file). Then, the third line ensures that the two Feedburner user agents are not redirected. The next three lines each match against a specific category feed URL and subsequently redirect the request to the appropriate Feedburner counterpart. Further, we are using the “No-Case” ( [NC] ) modifier to ensure case-insensitive pattern matching for all directives. Finally, each of the three rewrites is executed as a “Temporary” ( [R=302] ) redirect.

Now, to implement this method, edit the last three lines according to your specific category and Feedburner feed information. Double-check that the changes are accurate. For additional categories, duplicate one of the three RewriteRules and edit as necessary. For fewer categories, simply delete one or two of the last three lines and edit as necessary. Once you have edited the code to meet your needs, place the entire chunk of code into your site’s root HTAccess file. If your WordPress installation is located in a subdirectory, you may also place the code in the root HTAccess for that subdirectory. In either case, make sure that this code is placed before the default WordPress permalink rules. Once uploaded to your server, verify functionality by navigating to your redirected category feeds. If everything is place and edited correctly, the redirects should be working and your category feed URLs should be opening their associated Feedburner feeds.

Redirecting Main, Comments, and Category Feeds

Chances are, if you are redirecting your WordPress category feeds to Feedburner, you will also want to redirect your blog’s main feed and comments feed as well. With our category-redirect code in place, we simply need to add two additional lines of code:

RewriteRule ^feed/?.*$     http://feeds.feedburner.com/main-feed     [L,NC,R=302]
RewriteRule ^comments/?.*$ http://feeds.feedburner.com/comments-feed [L,NC,R=302]

Edit these two lines of code with your particular feed information and then place them into the category-redirect code as follows:

# Redirect Wordpress Category Feeds to Feedburner
<IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteCond %{HTTP_USER_AGENT} !^.*(FeedBurner|FeedValidator) [NC]
 RewriteRule ^feed/?.*$     http://feeds.feedburner.com/main-feed     [L,NC,R=302]
 RewriteRule ^comments/?.*$ http://feeds.feedburner.com/comments-feed [L,NC,R=302]
 RewriteRule ^category/business/feed/?.*$ http://feeds.feedburner.com/business-feed [L,NC,R=302]
 RewriteRule ^category/pleasure/feed/?.*$ http://feeds.feedburner.com/pleasure-feed [L,NC,R=302]
 RewriteRule ^category/nonsense/feed/?.*$ http://feeds.feedburner.com/nonsense-feed [L,NC,R=302]
</IfModule>

With that code in place (and properly edited), your server will redirect all requests for your blog’s main, comments, and specified category feeds to their respectively associated Feedburner feed URLs. All other types of feeds (tags, post comments, author feeds, etc.) will not be affected and will appear as normal when requested.

Props

Thanks to Alexander for his question about redirecting category feeds. His code was used as the catalyst for the elaborated techniques presented in this article.