Self-Service Feed Aggregation with WPMu

This post will detail how to create an aggregator site wherein people can simply add their feeds to a site and have their content automatically re-published. This example is specifically for WordPress and/or WordPress Multi-User. It depends upon three plugins, so download them ahead of time from the links below:

1) Oz Politics’s BDP RSS Aggregator

2) Andre Malan’s Add RSS extension widget for BDP RSS

3) Charles Johnson’s Feed WordPress plugin

Here’s how (and note that all the images below link to larger versions for your viewing pleasure):

Setting up BDP RSS

First you need to install, activate and setup the aggregator plugin BDP RSS. I will leave the installation and activation of this plugin to you, because it is the same as installing any other. However, the setup may benefit from some detailing. Once you have installed and activated BDP RSS, go to the Manage tab and find and click on the RSS Feeds subtab. You will then be taken to the space for managing feeds with this plugin. Which will look like the following:

BDP RSs Managment screen

This is pretty straighforward, you add feeds here, and poll them to pull all the newst conenct (which happens automatically based on the time you set). Andre Malan’s Add RSS Extension for BDP RSS actually automates this process from the front page of the blog, but more on this shortly.

If you scroll down a bit, you will be taken to the “Output formats” section of this page, this is where you control the output of the feeds you are aggregating, and this is the portion of this plugin that needs some explaining.

Once a number of feeds have been added, click on the edit button of the output formats (of which you can have several, but for this functionality you will only use one output format with the id 1). Once you click on the edit button you will be taken to a configuration page with a lot of options that can be overwhelming, so let’s take a look at them in some detail:

Here is where you an name the output format and decide how you want the aggregated feeds to be listed, whether chronologically, alphabetically, etc. Additionally, You have the choice to select only certain feeds, or to list all feeds, for truly automating this function so you don;t have to keep coming back to this page, I would just leave the radio box checked with the default of “List all sites.” After this you will see a series of other options below for how many post, how characters to display, in addition to other settings. The XHTML formatting for list presentation shown below is for custom formatting, but I never mess with this.

The XHTML tags to retain in this re-posting is something I do use, and you can see the options I select below:

After this, you get to a series of custom options for archiving, caching, or creating a feed of your aggregated feeds (an OPML feed). I will ignore the archiving and caching options, and focus on the “RSS feed from list” option you will need to create a feed of your feeds. Also, they don’t make this clear, but once you create an overarching feed, it will have the following url:

http://yourdomain.org/?bdprssfeed=1 (with the number being the ID of the Output format)

For example, the feed of all the aggregated posts on Reading Capital would be as follows:

http://readingcapital.org/?bdprssfeed=1

After you check the box for allowing an RSS feed to be provided for the list, then you can save your changes and you should be done with setting up BDP RSS.

Setting Up FeedWordPress

Now that we have set up BDP RSS, we can now install and activate FeedWordPress, which will actually syndicate the feeds that are being added into BDP RSS. The setup for this will actually take the feed for the list of feeds we created in BDP RSS, and simply republish these feeds within, for this example, Reading Capital. So, for our example, take http://readingcapital.org/?bdprssfeed=1 and go to the Syndicate tab in your WordPress backend.

You add the url for the feed (http://readingcapital.org/?bdprssfeed=1) in the “Add new syndicated site” text field, and click on the syndicate button, which will then test and preview the feed to make sure it works, after that click on the “Use this feed” button.

Once you have done this, you need to set up the publishing options for the feed under the Syndication–>Options tab. Below are the settings I am using, you have numerous choces, and you can choose what works for you, but I prefer to turn off comments on the aggregation site, and make the permalink link back to the original post on the author’s blog.

Once you have set these options and saved them, you need to go back to the main syndication page, check the radio box of your feed, and click on “Update Checked Links” –which is you follow my settings in the Options above will happen automatically from now on.

3) Allowing Users to Add their RSS feeds from the Front page

Finally, install Andre Malan Add RSS extension plugin for BDP RSS (follow his instructions for installation) and go to the design–>Widgets section of your backend, and drag the widget into the sidebar. After that, as people add their feed on the front page of your blog, it will automatically be inserted into the BDP RSS list of feeds, which i turn will be run through FeedWordPress and re-published on the blog. Genius? Yeah, it is, isn’t it! And it’s all Andre Malan, so kudos to him!

This entry was posted in , wpmu, wpmu development. Bookmark the permalink.

2 Responses to Self-Service Feed Aggregation with WPMu

  1. Jim;

    Thanks a lot for this useful tutorial. I have two questions: Why use Feed WordPress and not doing everything with BDP? and How I can I control that anyone is able to add feeds to the planet?

  2. I found the response for the second question: the user has to be logged in the wpmu installation. Thanks.

Leave a Reply

Your email address will not be published. Required fields are marked *