This is a RadiantCMS extension (originally a behavior by Alessandro Preite Martinez) that adds some tags to fetch and display RSS feeds. It uses the'ruby-feedparser' module, and it is able to cache the raw feed data and to only fetch the new feed if it has been modified (using the If-Modified-Since HTTP header).
Add gem "radiant-rss_reader-extension", "~> 1.0.0"
to your Gemfile and run bundle install
Use it in your page like this (just an example):
<dl>
<r:feed:items url="http://www.somefeed.com/rss" limit="5">
<dt><r:feed:link /> - by <r:feed:creator />, <r:feed:date format="%b %d"/></dt>
<dd><r:feed:content /></dd>
</r:feed:items>
</dl>
You can also order by some feed entry attribute other than the date:
<ul>
<r:feed:items
url="http://feeds.boingboing.net/boingboing/iBag"
order="creator ASC">
<li><r:feed:link /></li>
</r:feed:items>
</ul>
And you can do headers to mark off sections:
<ul>
<r:feed:items
url="http://feeds.boingboing.net/boingboing/iBag"
order="creator ASC">
<r:feed:header for="creator">
<h2><r:feed:creator /></h2>
</r:feed:header>
<li><r:feed:link /></li>
</r:feed:items>
</ul>
You can sort items and group headers by date, title, content, creator, or link (i.e. the URL of the item). There are more things you can do, which are documented in rss_reader.rb
.
- Alessandro Preite Martinez ([email protected])
- BJ Clark ([email protected], http://www.scidept.com/)
- Loren Johnson ([email protected], http://www.fn-group.com)
- Andrew vonderLuft ([email protected], https://avlux.net)
- James MacAulay ([email protected], http://jmacaulay.net/)
- Michael Hale ([email protected], http://michaelahale.com/)
- Bryan Liles ([email protected], http://smartic.us/)
Creative Commons Attribution-Share Alike 2.5 License