Dan has been nagging me for a while now to set up a iTunes feed for his podcast. So I did.
However, a bit like my iTunes streaming guide I couldn't find a step by step, follow this and it will work guide. Actually I couldn't find any guide, just vague hand waving of how it could work. Or should work. Or might work. But no actual templates nor anything concrete.
So, I present "The definitive guide to setting up an iTunes podcast feed from Movable Type". Phew that’s a mouthful.
The Short Guide
- Install the MT plugin Enclosures
- Install the MT plugin Custom Fields
- Create new podcast fields
- Create a new category for your podcast
- Populate the category fields
- Create a new podcast feed template
- Create a entry for your podcast episode
- Publish, Test and Listen
Essentially what we are going to do is use Custom Fields to create some new category fields to describe the podcast and use Enclosures to automatically pull out the media details from the URL.
The Long Guide
- Download and install the MT-Enclosures plugin. This is pretty easy and just follow the instructions on Brandon Fullers plugin page for MT-Enclosures. I had no problems doing this, just dropped the file into the plugin directory and that was that.
- Download and install the Custom Fields plugin. Again just follow the instructions on the Movalog site. However their are two bugs I found with this plugin, that you will need to work around.
- With Custom Fields you can create both new Entry fields and new Category fields.

However clicking on either option takes you through to the Edit Custom Entry Fields page and not the categories one. To solve this problem you need to edit lne 31 of categories.pl file and change entries.cgi to categories.cgi, as this post on the support forum discusses.
- For some reason when you do click through to the correct page, there are two slashes after the domain name.

Once you have clicked through and you are on this page, you need to remove one of the slashes. I had problems creating and deleting fields when there were two slashes. Just delete one of the slashes and you should be fine. This may only be a problem with me, as I haven't seen any posts on it in the support forum, but I have logged an error so keep an eye on support forum if you are having the same problem.
Also I didn't upload the CVS files in the download. I don't think these are necessary. - With Custom Fields you can create both new Entry fields and new Category fields.
- Now we need to create some new category fields. We will then uses these fields to automatically publish the relevant data for iTunes to describe the podcast. The main page for your blog should have two links under plugin actions (as seen in image 1 above). Once you have fixed the categories link, click through on it and it will take you to Custom Category Fields page. Click Create new Field and create 6 fields with the following data.
To populate <itunes:summary> Field Name Podcast Summary Description A long description that will appear next to your Podcast cover art when a user selects your Podcast. Template Tag CategoryDataPodcastSummary Type Single-Line Text Required? No To populate <itunes:subtitle> Field Name Podcast Subtitle Description A short description that provides general information about the Podcast. It will appear next to your Podcast as users browse through listings of Podcasts. Template Tag CategoryDataPodcastSubtitle Type Single-Line Text Required? No To populate <itunes:explicit> Field Name Podcast Explict Description This tag should be used to note whether or not your Podcast contains explicit material. Template Tag CategoryDataPodcastExplict Type Radio Buttons Drop Down Options no, yes Required? No To populate <itunes:block> Field Name Podcast Block Description Prevent the entire podcast from appearing in the iTunes Podcast directory. Template Tag CategoryDataPodcastBlock Type Radio Buttons Drop Down Options no, yes Required? No To populate <itunes:image> Field Name Podcast Image Description Specifies the url to the artwork for your podcast. Tunes prefers square .jpg images that are at least 300 x 300 pixels. (Supports images in JPEG and PNG formats) Template Tag CategoryDataPodcastImage Type URL Required? No To populate <itunes:category> Field Name Podcast Category Description Primary Category for your podcast on iTunes Template Tag CategoryDataPodcastCategory Type Single-Line Text Required? No When you are done, your new Custom Category Fields should look something like this

- Now that we have new fields you need to create a category for your podcasts. They way it will work is that each podcast has it's own category and from that category we pull all the relevant information to populate iTunes. Each episode will come from a post within this category. So say you have three posts, a music one, a video cast and an audio book podcast that you do. Then create three categories, each one being the title of your podcast, e.g. "The Destruct/hour", "Ski Video Jumps" & "The Trusted Professionals". These will become the title of the podcast that shows up in iTunes. You can place these as a subcategory if you want, and in Dan's case this is what I have done with "Radioblogging" being the top level podcast category and under that I put the actual podcast, so far just the music one "The destruct/hour".
- When you create the new category above, you will notice a whole lot of new fields (the ones we created earliy). Populate these fields with the information you want to appear in iTunes. We create a description of the what the fields are above so it should be pretty self evident, however I'll add a few more points to help you.
- Category Label is the title of your podcast.
- Category Description is a description on what your podcast is about.
- Podcast Summary is the long description that will appear next to your Podcast cover art when a user selects your Podcast. Limited to 4000 characters or less, plain text, no HTML
- Podcast Subtitle is a short description that provides general information about the Podcast. It will appear next to your Podcast as users browse through listings of Podcasts. Limited to 255 characters or less, plain text, no HTML.
- Podcast Explict is used to note whether or not your Podcast contains explicit material. This puts a red square with the word explict in it, next to your podcast.
- Podcast Block when set to yes is used to prevent the entire podcast from appearing in the iTunes Podcast directory.
- Podcast Image is the URL that links to the image for the artwork that goes with your podcast. This can be between 170x170 and 300x300 pixels in size and either a jpg or a png.
- Podcast Category is the iTunes category. Put in one from the list at the bottom of the apple iTunes podcasting tech specs. I have only included support for top level categories, but you could extend this quite easily to have more if you chose.
Here's a bit of an example of a populated page

- Go to your templates page and create a new index template, with the code below. Note this template has to be static, as the enclosures plugin doesn't work with dynamic templates.
Also note that there are 4 fields (highlighted below) you have to fill manually. 3 of those are the category name (you have one feed per podcast which is one feed per category. The final one is the any copyright notice you want to post. (Otherwise delete this field). Set it to save as nameofyourfeed.xml
<?xml version="1.0" encoding="UTF-8"?> <rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0"> <channel> <MTEntries lastn="1" category="YOUR PODCAST CATEGORY GOES HERE">
<title><$MTEntryCategory$></title>
<itunes:author><$MTEntryAuthorDisplayName encode_xml="1"$></itunes:author><MTEntryCategories category="YOUR PODCAST CATEGORY GOES HERE">
<link><$MTCategoryArchiveLink$></link>
<itunes:subtitle><$MTCategoryDataPodcastSubtitle$></itunes:subtitle>
<itunes:summary><$MTCategoryDataPodcastSummary$></itunes:summary>
<description><$MTCategoryDescription$></description>
<itunes:explicit><$MTCategoryDataPodcastExplict$></itunes:explicit>
<itunes:block><$MTCategoryDataPodcastBlock$></itunes:block>
<language><$MTBlogLanguage ietf="1"$></language>
<copyright>PUT ANY RELEVENT COPYRIGHT INFORMATION HERE.</copyright>
<lastBuildDate><$MTEntryDate format_name="rfc822"$></lastBuildDate>
<itunes:image href="<$MTCategoryDataPodcastImage$>" />
<image>
<url><$MTCategoryDataPodcastImage$></url>
<title><$MTEntryCategory$></title>
<link><$MTCategoryArchiveLink$></link>
</image><category><$MTCategoryDataPodcastCategory$></category>
<itunes:category text="<$MTCategoryDataPodcastCategory$>" />
</MTEntryCategories>
</MTEntries><MTEntries category="YOUR PODCAST CATEGORY GOES HERE">
<item>
<title><$MTEntryTitle remove_html="1" encode_xml="1"$></title>
<$MTEntryEnclosures$>
<itunes:author><$MTEntryAuthorDisplayName encode_xml="1"$></itunes:author>
<pubDate><$MTEntryDate format_name="rfc822"$></pubDate>
<description><$MTEntryBody encode_xml="1"$></description>
<itunes:keywords><$MTEntryKeywords$></itunes:keywords>
</item>
</MTEntries>
</channel>
</rss> - Now go create an entry for your podcast. The title of the entry is the title of the episode. The body of the entry is the description of the episode. Under extended entry put the link to the MP3 or AAC file that is the show itself, as a link. The enclosures plugin will pull this out automatically and insert it correctly into the template. If you enter keywords (comma separated) into the keywords field it will include these keywords for your podcast, which should help for people searching on it in IMS, but there is some doubt how effective this is.
Here is an example

- Hit publish on your entry. Make sure the new feed template gets built and check the xml is present. Then go to iTunes and go Advanced → Subscribe to podcast and paste in the url. Then download a episode and subscribe. Listen to it. Check out the info by clicking on the 'i'. All should work fine and dandy. If you want to have a look at a complete podcast feed, Dan's is http://www.znaddanz.com/destructhour.xml
Additional Reading Material

Oh My Pod! Le blog des actualites du podcast
Créer un flux podcast avec Movable Type
Si vous utilisez le logiciel Movable Type pour votre blog, ce guide devrait vous interesser. Il explique en effet comment, avec 2 plugins, il est possible de rajouter des champs supplementaires pour creer automatiquement votre propre podcat et y... Read More
CCLaP
CCLaP Podcast 02: GapersBlock.com's Andrew Huff
Today, episode 2 of the CCLaP Podcast: a four-minute video interview with Andrew Huff, editor-in-chief of Chicago arts-and-entertainment website GapersBlock.com. Read More