Extension:SimpleFeed

This extension outputs the contents of an RSS feed. It is very customisable. As a result, no editing of the PHP source is required as everything is done in the wiki page. The SimplePie extension PHP feed-parsing library is also required.

Usage
There are two arbitrary fields that must be present. These are the url argument, and the content between the  [...]  tags. A simple example is shown below:



[{PERMALINK} {TITLE}]
{DATE}, by {AUTHOR} {DESCRIPTION}

This will pull the BBC News feed and output five posts. For every post, it will output the data between the feed tags, replacing {PERMALINK}, {TITLE}, {DATE}, {AUTHOR} and {DESCRIPTION}</tt> with the appropriate information.

Simple use
Simply adding around the link, for example:
 * http://newsrss.bbc.co.uk/rss/newsonline_uk_edition/front_page/rss.xml

posts the feed with no modifications. This format is more likely to work if the other above format does not.

Customisation
The following arguments can be used to customise the output:


 * url
 * The URL of the feed. This argument is not optional.


 * entries
 * The number of post entries to output. This defaults to 5, but can be any number. 0 is unlimited.


 * type
 * If this is set to "planet</tt>" then the post title and author will be retrieved from the title. For example, a post in a planet/aggregator could have a title "Joe Bloggs: MediaWiki is great". If type="planet"</tt> is set, then {TITLE}</tt> will become "Mediawiki is great", and {AUTHOR}</tt> will become "Joe Bloggs".


 * date
 * The format of the date to output. This conforms to PHP's date function syntax. This defaults to j F Y</tt> (E.g. 3 March 2007).

Further examples
Using an aggregator's feed <feed url="http://planet.debian.org/rss20.xml" type="planet">

[{PERMALINK} {TITLE}]
{DATE}, by {AUTHOR} {DESCRIPTION} This will remove the author's name from the title of the post, and setting its value to {AUTHOR}</tt>.

Changing the date format <feed url="http://planet.debian.org/rss20.xml" date="h:i:s d/m/y T">... Changes the date format to, in this example, "23:20:04 24/03/2007 GMT".

Installation

 * 1) Save SimpleFeed.php</tt> to extensions/</tt> and make sure the server has permission to read it.
 * 2) Save simplepie.inc</tt> to extensions/</tt>.
 * 3) Create extensions/cache</tt>, set correct write permissions using chmod (www-user</tt>, or equivalent, should be allowed to write).
 * 4) ;NOTE:Earlier versions of SimpleFeed.php</tt> may require the cache</tt> folder to be created in $IP/cache</tt>, i.e. as a sibling, rather than subfolder of extensions</tt>. (This was required in the case of a combination of MediaWiki 1.10, <tt>simplepie</tt> 1.1, and a circa-2007 version of <tt>SimpleFeed</tt>.) The latest version available from the git repository appears to fix this problem, so an update is encouraged.
 * 5) Add <tt>include("./extensions/SimpleFeed.php");</tt> to the last line of <tt>LocalSettings.php</tt> before the end <tt>?></tt>.

If you are in a corporate environment, check out any proxy servers or firewalls.

Parameters

 * Line 31: <tt>$simplepie_path</tt> - string: Path to <tt>simplepie.inc</tt>, including leading forward slash. For example:
 * $simplepie_path = 'extensions/';

Todo
The following feature(s) will be added shortly:
 * Check whether the URL given is a correct address. If SimplePie can't read it, output something.
 * Clean up the regular expressions.