visitors (intermediate) Web feeds are a convenient mechanism to let visitors to be notified of changes to a site. Instead of repeatedly checking RecentChanges every day to see what is new, a visitor can use a news aggregator to quickly see what pages of interest have changed on a site. Web feeds are commonly recognized by terms such as RSS, Atom, and web syndication. They are also the foundation for podcasting.
In its simplest form, web feeds in Pm Wiki are built on WikiTrails. Using a feed action such as
?action=atom on a trail generates a web feed (often called a "channel") where each page on the trail is an item in the feed. Since the Recent Changes and Site.AllRecentChanges pages are effectively trails, one can easily get an RSS feed for a group or site by simply adding
?action=rss to the url for a Recent Changes page. For example, to get the site feed for pmwiki.org, one would use
Authors can also create custom feeds by simply creating a wiki trail of the pages they want included in the feed. Feeds can also be generated from groups, categories, and backlinks, and the order and number of items in the feed can be changed using options in the feed url. Thus, one can obtain a feed for the Skins category (sorted with most recent items first) by using
Pm Wiki is able to generate feeds in many formats, including RSS 2.0 (
?action=rss), Atom 1.0 (
?action=atom), and RSS 1.0 (
?action=rdf). In addition, although it is not normally considered a web feed, Pm Wiki can generate metadata information using the Dublin Core Metadata extensions (
?action=atomadded to the end of the url.
Add any of the following options to the end of a Pm Wiki web feed url to change its output:
?count=n - limit feed to n items ?order=-time - display most recently changed items first ?trail=page - obtain items from trail on page ?group=group - limit feed to pages in group ?link=page - create feed from pages linked to page ?list=normal - exclude things like Recent Changes, All Recent Changes, etc.
This section describes how to syndicate portions of a wiki to appear in a web feed. It does not describe how to display a web feed within a wiki page -- for that, see Cookbook:RssFeedDisplay.
To enable web feed generation for a site, add one or more of the following to a local customization file:
if ($action == 'rss') include_once('scripts/feeds.php'); if ($action == 'atom') include_once('scripts/feeds.php'); if ($action == 'rdf') include_once('scripts/feeds.php'); if ($action == 'dc') include_once('scripts/feeds.php');
if ($action == 'rss' || $action == 'atom' || $action == 'rdf' || $action == 'dc') include_once('scripts/feeds.php');