Drupal 6 As A Podcasting Platform


Champs Not Chumps (CNC) is an audiopod­cast fea­tur­ing inter­views with peo­ple who are pur­su­ing cre­ative, social, or intel­lec­tual projects. So far, we’ve done episodes on alter­na­tive comics, flash fic­tion, acces­si­ble farm­ing, teach­ing med­i­ta­tion to kids, you name it.

We’re agnos­tic when it comes to sub­ject areas and omniv­o­rous in our interests–we’re guided, really, by the peo­ple we know who are doing some­thing awe­some and whose work or ideas we want to showcase.

It’s a labor of love and we have no bud­get or staff–it’s just me and another librar­ian. We take turns host­ing and I han­dle all the tech­ni­cal stuff.

Why Dru­pal?

So, we wanted our lis­ten­ers to be able to engage with the show beyond just lis­ten­ing to the episodes, and Dru­pal pro­vided us with an open source plat­form to feed the pod­cast and pro­vide a web pres­ence for the show.  I was also inter­ested in Dru­pal because I wanted a dynamic, cus­tomiz­able site that didn’t require any pro­gram­ming, and I wanted my co-producer to be able to post con­tent (e.g., blog posts) to the site with­out know­ing much about how the CMS operated.


We store the audio files for each episode on lib­syn and use a vari­ety of Dru­pal con­tributed mod­ules to deliver our episodes to sub­scribers.  Each episode page is a node that uti­lizes the RSS Remote Enclo­sure mod­ule to attach the audio file (served up by lib­syn) to theRSS Feed.

We con­structed the feed itself using the Views mod­ule, so that we could pick and choose what con­tent was sent to subscribers–in this case, episodes and posts from our blog.

As non-techies, we were very excited by the iTunes mod­ule, which we used along with Views to cre­ate a stand-alone feed that met Apple’s pod­cast­ing spec­i­fi­ca­tions. This feed plugs us into the iTunes store, mak­ing it very easy for our lis­ten­ers to down­load episodes to their mobile devices and to sub­scribe to the show.


We started with a con­tributed theme, Mag­a­zeen, but as I got more famil­iar with Dru­pal andCSS cod­ing, I decided to develop a unique theme for the site start­ing with Zen.

Since I was learn­ing CSS and Dru­pal them­ing at the same time, I found the Fire­bug mod­ule very use­ful, espe­cially for fine-tuning the lay­out and trouble-shooting with­out hav­ing to mod­ify the CSS files themselves.

The theme I designed, “Edgar,” has a sim­ple two-column, fixed-width lay­out. The logo, the image of the 19th cen­tury tug-of-war team, the typo­graph­i­cal ele­ments, and the search but­ton are, together, sup­posed to sug­gest a lit­tle bit of olde-timey whim­sey or even puffery, as if we were pro­mot­ing some snake oil tonic that really could trans­form you from a “chump” into a “champ.”

Each episode fea­tures a set of links for lis­ten­ers inter­ested in learn­ing more about the topic dis­cussed. When­ever appro­pri­ate, I also add an image gallery to the node using lightbox2, which makes every­thing look very slick.

Screenshot of episodes pageOne of the fea­tures I wanted when devel­op­ing the site was a page that auto­mat­i­cally listed all of the episodes with links to their nodes, sum­maries, and images to rep­re­sent them. Views (in con­junc­tion with CCK) made cre­at­ing a dynamic table like this a piece of cake. But it was Image­cache and Image­cache Actions that made it pos­si­ble to com­pletely auto­mate things. Each image in the episodes table has been pulled from an episode node and resized by Image­cache. Then Image­cache Actions takes over and con­verts each image from a jpeg to a png file and rounds off the corners.

Finally, the episode page uses Tagadelic to bring atten­tion to the key­words asso­ci­ated with episodes and pro­vide another way for the user to explore the site’s content.


I sus­pect that we’re not doing any­thing all that unusual, but we also use our stan­dard feed to pop­u­late posts to our social net­work­ing tools using Facebook’s RSS Graf­fiti app and the web­site  Face­book, in par­tic­u­lar, has been a great source for new listeners.

We also use a vari­ety of mod­ules to help with search opti­miza­tion: Global Redi­rect,Pathauto so that blog­posts are auto­mat­i­cally assigned descrip­tive URLs, Node­words for meta­data tag­ging, and XML Sitemap to cre­ate a more com­plete sitemap for search engines crawl­ing our pages.

And now that we’ve plugged in the Google Ana­lyt­ics mod­ule, track­ing vis­i­tors to our sites is a breeze.

So, even though we may not be doing a lot of totally new things with drupal–we’re not devel­op­ers or even design­ers, really–we’ve tried to adopt many of the best prac­tices from the com­mu­nity to cre­ate a visu­ally appeal­ing and content-rich site to accom­pany our podcast.

Moral of our story?: Don’t be intim­i­dated by Dru­pal; jump in and be the first non-developer on your block to make awe­some web­sites with loads of functionality.