Full Content RSS Feed in Movable Type
If you read BrainLog using a feed reader, you probably noticed the feed format changed slightly to include the complete text of each entry. Depending on which feed reader you use, this may have made a mess of the last dozen or so entries appearing as new. Sorry about that, but after having spent a couple of weeks using a feed reader for the first time and noticing how most people do full-content feeds, I decided the default Movable Type 40-word excerpts feed was sub-par.
There are lots of good write-ups on sprucing up Movable Type feeds out on the web, but it's worth another one to describe the minimal change to the RSS 1.0 ("RDF") feed template that's provided by default with Movable Type (3.3):
- Go to the Templates section of your blog's Movable Type administrative interface.
- Edit the "RSS 1.0 Index" template by clicking on it.
- In the opening
<rdf:RDF>tag near the top, add the following attribute:xmlns:content="http://purl.org/rss/1.0/modules/content/"
- Inside the
<item>...</item>tag near the bottom, just before the closing tag, add the following element:<content:encoded> <$MTEntryBody encode_xml="1"$> <$MTEntryMore encode_xml="1"$> </content:encoded>
- Click Save and Rebuild.
I've only tested this with a couple of feed readers so far. Feedback welcome. For instance, I notice other write-ups are suggesting putting the complete text in the "description," instead of using the RSS 1.0 "content" extension.
Look elsewhere for suggestions for doing this in the RSS 2.0 template. (The default Atom feed appears to contain full text already.)
My RSS 1.0 ("RDF") feed Movable Type index template is the default Movable Type RSS 1.0 Index template, with the two minor modifications to include the full text of each entry in the feed:
<?xml version="1.0" encoding="<$MTPublishCharset$>"?><rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:admin="http://webns.net/mvcb/"
xmlns:cc="http://web.resource.org/cc/"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns="http://purl.org/rss/1.0/"><channel rdf:about="<$MTBlogURL$>">
<title><$MTBlogName encode_xml="1"$></title>
<link><$MTBlogURL$></link>
<description><$MTBlogDescription encode_xml="1"$></description>
<dc:language>en-us</dc:language>
<dc:creator></dc:creator>
<dc:date><MTEntries lastn="1"><$MTEntryDate format="%Y-%m-%dT%H:%M:%S" language="en"$><$MTBlogTimezone$></MTEntries></dc:date>
<admin:generatorAgent rdf:resource="http://www.movabletype.org/?v=<$MTVersion$>" />
<MTBlogIfCCLicense>
<cc:license rdf:resource="<$MTBlogCCLicenseURL$>" />
</MTBlogIfCCLicense><items>
<rdf:Seq><MTEntries lastn="15">
<rdf:li rdf:resource="<$MTEntryPermalink encode_xml="1"$>" />
</MTEntries></rdf:Seq>
</items></channel>
<MTEntries lastn="15">
<item rdf:about="<$MTEntryPermalink encode_xml="1"$>">
<title><$MTEntryTitle encode_xml="1"$></title>
<link><$MTEntryPermalink encode_xml="1"$></link>
<description><$MTEntryExcerpt encode_xml="1"$></description>
<dc:subject><$MTEntryCategory encode_xml="1"$></dc:subject>
<dc:creator><$MTEntryAuthor encode_xml="1"$></dc:creator>
<dc:date><$MTEntryDate format="%Y-%m-%dT%H:%M:%S" language="en"$><$MTBlogTimezone$></dc:date>
<content:encoded><$MTEntryBody encode_xml="1"$><$MTEntryMore
encode_xml="1"$></content:encoded>
</item>
</MTEntries></rdf:RDF>