rakaz

about standards, webdesign, usability and open source

Nucleus RSS/Atom Aggregator 0.10

As promised, today I am going to unveil my third Nucleus plugin. It’s called RSS/Atom Aggregator and is a variation of my previous plugin, the RSS/Atoms Reader. Instead of reading a single feed it can read multiple feeds and combine them into a single list. With this plugin you can simply include a single list of current newsitems from your favorite sites.

RSS/Atom Aggregator is based on another XML standard, OPML. Each of the feeds you want to show are read from this OPML file and fetched from the correct location, combined and sorted by date. If you don’t have any OPML files, or if you simply do not want to use an OPML file, you can also specify the feeds you want to feature manually. The format to do this is as follows: each feed must be on a single line. First you have to specify the name of the feed, a “|” and finally the URL of the feed. For example:

Asa|http://weblogs.mozillazine.org/asa/index.rdf
Ben Goodger|http://weblogs.mozillazine.org/ben/index.rdf
Blake Ross|http://www.blakeross.com/index.rdf
Blogzilla|http://www.deftone.com/blogzilla/index.xml
Daniel Glazman|http://glazman.org/weblog/dotclear/rss.php?cat=Mozilla
David Hyatt - Safari|http://weblogs.mozillazine.org/hyatt/blogger_rss.xml
Henrik Gemal|http://gemal.dk/blog/categories/mozilla/index.xml
Ian Hickson|http://ln.hixie.ch/rss/html

The feeds that are parsed are cached, to ensure the website providing the feed isn’t sending unnecessary data evertime somebody visits your site. It is also possible to change the maximum age of a cached feed. In addition to this, In addition to this there is also support for ETag headers, which will lead to a reduction in bandwidth usage when the cache is expired, but the feed does not contain any new items.

Example:

How to install it

Download the file XMLPlugins.zip, extract the files and place them into the plugins folder of your nucleus installation. Go to the management console and the plugin section. First of all, install XMLSupport and finally install RSSAtomAggregator.

The two plugins should appear in the list of currently installed plugins. In this list you can also edit the options of these plugin. The most important option is the location of the OPML file. By default the plugin assumes you have placed it in the root folder of your Nucleus installation. The default name is feeds.opml. If you don’t have an OPML file yet, you can use this one for testing.

To actually use the plugin you must edit the skin of your blog. Simply include, in a convenient place the skin var <%RSSAtomAggregator%>. Nucleus will then replace this with the contents of the feeds.

8 Responses to “Nucleus RSS/Atom Aggregator 0.10”

  1. Roel wrote on November 3rd, 2004 at 9:37 am

    If Nucleus plugins come with additional files, they are normally placed in a /nucleus/plugins/pluginname-in-lowercase/ directory. You didn’t do that with this file, or did you? Is this because you intend it to be available for more plugins?

    Anywayz, it looks very nice. I’m going to try it out today!

  2. Roel wrote on November 3rd, 2004 at 10:17 am

    I see. You intend it to be available for more plugins. ;)

  3. rakaz wrote on November 3rd, 2004 at 1:34 pm

    Roel: You’re right. it provides classes that are used by all three plugins. For now it’s just a regular .php file that must be placed in the same directory, but I am planning on making it a completely seperate plugin that must be installed if you want to use any of the other three. This also has another advantage that global settings for each of the three plugins, such as cache settings only have to be configured once.

  4. upandrunning wrote on November 4th, 2004 at 2:17 am

    Can you install multiple instances of <%RSSAtomAggregator%> in the skin, with differing feeds?

  5. rakaz wrote on November 9th, 2004 at 4:05 pm

    upandrunning: no, not yet… I probably will make this a feature in the next version, but it will only work with OPML files. Just create OPML files for every instance you want to use and use the file as an parameter to the plugin call.

  6. ketsugi wrote on April 8th, 2005 at 5:08 am

    How soon will this feature be available? I’d really like to be able to incorporate more than one set of aggregated feeds into my website.

  7. Hector wrote on July 15th, 2005 at 4:52 am

    When I write <$description%> into de item box, nucleus shows me the title value but not a description value that appear in RSS-2 file.
    Is it normally?
    Can I show the description item?

    Thanks

  8. po wrote on December 9th, 2005 at 6:50 pm

    Is there some parameter somewhere that sets 10 feeds as the limit? Can that be adjusted to be more?
    Thanks