Hello Sean. Searching the mailing list I understand that the Radiant Podcast has been generated by radius tags and served by radiant itself. Wouldn't you mind to share some details about the tags used, the page/sub-page architecture, etc.? For example how has been generated the podcast.xml page? I'd like to setup a podcast web site based on radiant ... Many thanks in advance. Luigi
on 2009-01-05 21:50
on 2009-01-06 00:31
Luigi, I've written an audio player extension for radiant, which you might find useful. It allows you to upload mp3 files, without requiring any other asset management extensions (e.g. page_attachments or paperclipped). It also provides radius tags for embedding a flash mp3 player. There is a good reference on the wiki about creating an RSS feed from Radiant content: http://wiki.radiantcms.org/Simple_RSS_Feeds It would be quite straightforward to adapt this to use the appropriate xml tags for a podcast.xml. Instead of iterating through children of a page, you would iterate through a collection of mp3s. Cheers, Drew : http://github.com/nelstrom/radiant-audio_player-ex...
on 2009-01-06 14:36
Luigi, My apologies for the late reply. Here's how it works. First, I created a root listing page (/podcast) for the podcast as an Archive page with this structure: --body-- <r:children:each limit="15" order="desc"> <div class="entry"> <h3><r:title /> <span class="author"><r:author /></span></h3> <div class="info"><r:date /> | <r:content part="duration" /> | <a href="<r:content part="url" />">Download (MP4)</a></div> <r:content /> <h4>Notes and Links</h4> <r:content part="notes" /> </div> </r:children:each> <div id="highlight"> <a href="itpc://radiantcms.org/podcast.xml"><img id="rss-icon" src="http://www.feedburner.com/fb/images/pub/feed-icon3... alt="" /></a> <a href="itpc://radiantcms.org/podcast.xml">Subscribe to the podcast</a> </div> --head-- (this part renders in the <head> section of the layout) <link rel="alternate" type="application/rss+xml" href="itpc://radiantcms.org/podcast.xml" /> That forms the basis of the "show notes" pages. In order to support this and the XML feed, each child page of /podcast is constructed with these parts (in no particular order): * size (length in bytes of the episode) * body (the description of the episode, usually short) * url (an absolute URL to the episode) * type (the MIME content type of the episode) * notes (notes to put in the "show notes" page) * duration (how long the episode is in HH:MM:SS) Now, I use S3 to host the podcast episodes, so I put in this information manually. If you were using page_attachments or some other media manager extension, you might be able to have it fill some of these in for you. The last part is to create the podcast feed. As you may know podcast feeds are just RSS 2.0 feeds with a few extra tags added. Here's the source of /podcast.xml: <?xml version="1.0" encoding="UTF-8"?> <rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0"> <channel> <title>Radiant CMS Podcast</title> <link>http://radiantcms.org/podcast</link> <itunes:subtitle>Publishing for Small Teams</itunes:subtitle> <itunes:author>Radiant CMS</itunes:author> <itunes:owner> <itunes:name>Radiant CMS</itunes:name> <itunes:email>email@example.com</itunes:email> </itunes:owner> <itunes:summary>Interviews with Radiant users and discussion about the progression of the Radiant project.</itunes:summary> <description>Interviews with Radiant users and discussion about the progression of the Radiant project.</description> <itunes:category text="Technology"><itunes:category text="Tech News" /></itunes:category> <itunes:explicit>no</itunes:explicit> <ttl>7200</ttl> <language>en-us</language> <r:find url="/podcast"> <r:children:each order="desc"> <item> <title><r:title /></title> <itunes:summary><r:content /></itunes:summary> <enclosure url="<r:content part="url" />" length="<r:content part="size" />" type="<r:content part="type" />" /> <guid>http://radiantcms.org<r:url /></guid> <pubDate><r:rfc1123_date /></pubDate> <itunes:duration><r:content part="duration" /></itunes:duration> </item> </r:children:each> </r:find> </channel> </rss> The main thing to notice is how the parts of each episode page are pulled into the proper place in the feed. Hope this helps! Cheers, Sean
on 2009-01-06 16:30
Mohit, you think you can get this into the Reboot docs? This is awesome! I was just about to ask the list about this. ~Nate
on 2009-01-06 16:40
Thanks to you guys. The radiant community rocks!
on 2009-01-06 16:41
Nate Turnage wrote: > Mohit, you think you can get this into the Reboot docs? This is awesome! I > was just about to ask the list about this. > Hi Nate, A bit tied up, but I've done the next best thing - linked a new page in the documentation to Sean's message in the Mailing List Archive so that it's easy to find. Will migrate the content and extension when I get a bit more time. http://wiki.radiantcms.org/Producing_a_Podcast Cheers, Mohit. 1/6/2009 | 11:38 PM.
on 2009-01-06 16:52
On Tue, Jan 6, 2009 at 9:38 AM, Mohit Sindhwani <firstname.lastname@example.org> wrote: > documentation to Sean's message in the Mailing List Archive so that it's > easy to find. Will migrate the content and extension when I get a bit more > time. > > http://wiki.radiantcms.org/Producing_a_Podcast > You are the man. I have one more thing to get out of the way and I'll start helping you out with that. Documentation is still a bit weak for Radiant and I want to help that not be the case. Cheers, Nate
on 2009-01-06 17:39
Nate Turnage wrote: > You are the man. I have one more thing to get out of the way and I'll > start helping you out with that. Documentation is still a bit weak for > Radiant and I want to help that not be the case. That would be great - I'm not actually doing that much documentation actually, but it's coming through thanks to all the contributors! Cheers, Mohit. 1/7/2009 | 12:37 AM.