<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>Movable Tips</title>
    <link rel="alternate" type="text/html" href="http://www.movabletips.com/" />
    <link rel="self" type="application/atom+xml" href="http://www.movabletips.com/atom.xml" />
    <id>tag:www.movabletips.com,2009-12-09://2</id>
    <updated>2012-01-30T09:34:24Z</updated>
    <subtitle>Tips, tricks and hints for all your Movable Type needs, shared by Maarten Schenk</subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type Pro 5.12</generator>

<entry>
    <title>Displaying YouTube or Vimeo Thumbnails in Movable Type</title>
    <link rel="alternate" type="text/html" href="http://www.movabletips.com/2012/01/displaying-youtube-or-vimeo-thumbnails-in-movable-type.html" />
    <id>tag:www.movabletips.com,2012://2.1744</id>

    <published>2012-01-05T15:57:08Z</published>
    <updated>2012-01-30T09:34:24Z</updated>

    <summary>On a recent project I had a Movable Type blog with entries containing embedded videos hosted on YouTube and Vimeo, and I needed a way to get a thumbnail image for each video so they could be displayed somewhere else...</summary>
    <author>
        <name>Maarten Schenk</name>
        <uri>http://www.movabletips.com</uri>
    </author>
    
        <category term="Templates" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Tricks and Workarounds" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="embed" label="embed" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="iframe" label="iframe" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="movabletype" label="Movable Type" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="template" label="template" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="thumbnail" label="thumbnail" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="thumbnails" label="thumbnails" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="trick" label="trick" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="video" label="video" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="vimeo" label="Vimeo" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="youtube" label="YouTube" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-us" xml:base="http://www.movabletips.com/">
        <![CDATA[On a recent project I had a Movable Type blog with entries containing embedded videos hosted on YouTube and Vimeo, and I needed a way to get a thumbnail image for each video so they could be displayed somewhere else on the site. &nbsp;Here is my solution...]]>
        <![CDATA[<div><span class="mt-tag" style="color: rgb(170, 119, 0); font-family: monospace; line-height: 16px; white-space: nowrap; "><div style="color: rgb(51, 51, 51); font-family: arial, helvetica, hirakakupro-w3, osaka, 'ms pgothic', sans-serif; line-height: normal; white-space: normal; ">This bit of template code can be included in an &lt;mt:entries&gt; loop or in the body of any entry.</div><br class="Apple-interchange-newline" /></span></div><div><span class="mt-tag" style="color: rgb(170, 119, 0); font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;mt:var name="thumbnailurl" value=""&gt;</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><span class="mt-tag" style="color: rgb(170, 119, 0); font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;mt:var name="thumbfound" value=""&gt;</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><font color="#aa7700" face="monospace"><span style="line-height: 16px; white-space: nowrap;"><br /></span></font><span class="mt-tag" style="color: rgb(170, 119, 0); font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;mt:if tag="entrybody" like="http\:\/\/www\.youtube\.com\/embed\/"&gt;</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><span class="mt-tag" style="color: rgb(170, 119, 0); font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;mt:entrybody regex_replace="/.*http\:\/\/www\.youtube\.com\/embed\/(.+?).\s.*/s","$1" setvar="youtubeid"&gt;</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><span class="mt-tag" style="color: rgb(170, 119, 0); font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;mt:setvarblock name="thumbnailurl"&gt;</span><span class="xml-text" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">http://img.youtube.com/vi/</span><span class="js-operator" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;</span><span class="js-variable" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">mt</span><span class="js-punctuation" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">:</span><span class="js-keyword" style="color: rgb(119, 0, 136); font-family: monospace; line-height: 16px; white-space: nowrap; ">var&nbsp;</span><span class="js-variable" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">name</span><span class="js-operator" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">=</span><span class="js-string" style="color: rgb(170, 34, 34); font-family: monospace; line-height: 16px; white-space: nowrap; ">"youtubeid"</span><span class="js-operator" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">&gt;</span><span class="js-string" style="color: rgb(170, 34, 34); font-family: monospace; line-height: 16px; white-space: nowrap; ">/0.jpg&lt;/</span><span class="js-variable" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">mt</span><span class="js-punctuation" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">:</span><span class="js-variable" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">setvarblock</span><span class="js-operator" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">&gt;</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><span class="mt-tag" style="color: rgb(170, 119, 0); font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;/mt:if&gt;</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><span class="mt-tag" style="color: rgb(170, 119, 0); font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;mt:if tag="entrybody" like="http\:\/\/vimeo\.com"&gt;</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><span class="xml-punctuation" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;</span><span class="xml-tagname" style="color: rgb(170, 0, 187); font-family: monospace; line-height: 16px; white-space: nowrap; ">script</span><span class="xml-punctuation" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">&gt;</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><span class="js-keyword" style="color: rgb(119, 0, 136); font-family: monospace; line-height: 16px; white-space: nowrap; ">function&nbsp;</span><span class="js-variable" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">showThumb</span><span class="js-punctuation" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">(</span><span class="js-variabledef" style="color: rgb(0, 0, 255); font-family: monospace; line-height: 16px; white-space: nowrap; ">data</span><span class="js-punctuation" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">)</span><span class="js-punctuation" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">{</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><span class="whitespace" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">&nbsp; &nbsp;&nbsp;</span><span class="js-variable" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">document</span><span class="js-punctuation" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">.</span><span class="js-property" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">getElementById</span><span class="js-punctuation" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">(</span><span class="js-string" style="color: rgb(170, 34, 34); font-family: monospace; line-height: 16px; white-space: nowrap; ">'thumb-&lt;mt:entryid&gt;'</span><span class="js-punctuation" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">)</span><span class="js-punctuation" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">.</span><span class="js-property" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">src&nbsp;</span><span class="js-operator" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">=&nbsp;</span><span class="js-localvariable" style="color: rgb(0, 68, 153); font-family: monospace; line-height: 16px; white-space: nowrap; ">data</span><span class="js-punctuation" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">[</span><span class="js-atom" style="color: rgb(34, 136, 17); font-family: monospace; line-height: 16px; white-space: nowrap; ">0</span><span class="js-punctuation" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">]</span><span class="js-punctuation" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">.</span><span class="js-property" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">thumbnail_medium</span><span class="js-punctuation" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">;</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><span class="js-punctuation" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; ">}</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><span class="xml-punctuation" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;/</span><span class="xml-tagname" style="color: rgb(170, 0, 187); font-family: monospace; line-height: 16px; white-space: nowrap; ">script</span><span class="xml-punctuation" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">&gt;</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><span class="mt-tag" style="color: rgb(170, 119, 0); font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;mt:entrybody regex_replace="/.*http\:\/\/vimeo\.com\/(\d+).*/s","$1" setvar="vimeoid"&gt;</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><span class="xml-punctuation" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;</span><span class="xml-tagname" style="color: rgb(170, 0, 187); font-family: monospace; line-height: 16px; white-space: nowrap; ">script&nbsp;</span><span class="xml-attname" style="color: rgb(0, 0, 255); font-family: monospace; line-height: 16px; white-space: nowrap; ">type</span><span class="xml-punctuation" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">=</span><span class="xml-attribute" style="color: rgb(34, 136, 17); font-family: monospace; line-height: 16px; white-space: nowrap; ">"text/javascript"&nbsp;</span><span class="xml-attname" style="color: rgb(0, 0, 255); font-family: monospace; line-height: 16px; white-space: nowrap; ">src</span><span class="xml-punctuation" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">=</span><span class="xml-attribute" style="color: rgb(34, 136, 17); font-family: monospace; line-height: 16px; white-space: nowrap; ">"http://vimeo.com/api/v2/video/&lt;mt:var name="</span><span class="xml-attname" style="color: rgb(0, 0, 255); font-family: monospace; line-height: 16px; white-space: nowrap; ">vimeoid</span><span class="xml-attribute xml-error" style="color: rgb(170, 0, 187); font-family: monospace; line-height: 16px; white-space: nowrap; ">"&gt;.json?callback=showThumb"</span><span class="xml-punctuation" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">&gt;</span></div><div><span class="xml-punctuation" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;/</span><span class="xml-tagname" style="color: rgb(170, 0, 187); font-family: monospace; line-height: 16px; white-space: nowrap; ">script</span><span class="xml-punctuation" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">&gt;</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><span class="mt-tag" style="color: rgb(170, 119, 0); font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;/mt:if&gt;</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><span class="mt-tag" style="color: rgb(170, 119, 0); font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;mt:if name="thumbfound"&gt;</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><span class="xml-punctuation" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;</span><span class="xml-tagname" style="color: rgb(170, 0, 187); font-family: monospace; line-height: 16px; white-space: nowrap; ">img&nbsp;</span><span class="xml-attname" style="color: rgb(0, 0, 255); font-family: monospace; line-height: 16px; white-space: nowrap; ">src</span><span class="xml-punctuation" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">=</span><span class="xml-attribute" style="color: rgb(34, 136, 17); font-family: monospace; line-height: 16px; white-space: nowrap; ">"&lt;mt:var name="</span><span class="xml-attname" style="color: rgb(0, 0, 255); font-family: monospace; line-height: 16px; white-space: nowrap; ">thumbnailurl</span><span class="xml-attribute xml-error" style="color: rgb(170, 0, 187); font-family: monospace; line-height: 16px; white-space: nowrap; ">"&gt;"&nbsp;</span><span class="xml-name xml-error" style="color: rgb(170, 0, 187); font-family: monospace; line-height: 16px; white-space: nowrap; ">id</span><span class="xml-punctuation xml-error" style="color: rgb(170, 0, 187); font-family: monospace; line-height: 16px; white-space: nowrap; ">=</span><span class="xml-attribute xml-error" style="color: rgb(170, 0, 187); font-family: monospace; line-height: 16px; white-space: nowrap; ">"thumb-&lt;mt:entryid&gt;"</span><span class="xml-punctuation" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">&gt;</span><br style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; " /><span class="mt-tag" style="color: rgb(170, 119, 0); font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;/mt:if&gt;</span><span class="xml-text" style="color: black; font-family: monospace; line-height: 16px; white-space: nowrap; ">​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​</span>
</div><div><br /></div><div>The first lines simply reset some variables, nothing special there.</div><div><br /></div><div>The next block uses some regular expression magic to get the ID of an embedded YouTube video (if the post contains one) and attaches it to a fixed URL at YouTube which then magically becomes a link to the correct thumbnail. &nbsp;Quite easy actually.</div><div><br /></div><div>For Vimeo, things are a bit more complex: thumbnails have no fixed URL structure, so you have to use Vimeo's API to get it. &nbsp;Fortunately they provide a handy javascript version of their API. &nbsp;In order to use it we first define a little function called 'ShowThumb' that will receive some 'data', and one of the bits of data it will receive is the URL of the thumbnail. &nbsp;We use that to change the 'src' attribute of an element on the page with the id 'thumb-xyz', where xyz is the ID of the entry. &nbsp;Next we call the Vimeo API, which calls the showThumb function we just defined and provides it with the correct data.</div><div><br /></div><div>In the end, if we found a video embed, we show an image with the correct 'src' set (if it is a YouTube video) or with the right id so the showThumb function can set it (for Vimeo).</div><div><br /></div><div>And that is all there is to it, really :-)</div><div><br /></div>]]>
    </content>
</entry>

<entry>
    <title>Dan Wolfgang Releases Spectacular &apos;Patrick&apos; Theme for Movable Type</title>
    <link rel="alternate" type="text/html" href="http://www.movabletips.com/2012/01/dan-wolfgang-releases-spectacular-patrick-theme-for-movable-type.html" />
    <id>tag:www.movabletips.com,2012://2.1742</id>

    <published>2012-01-05T10:57:19Z</published>
    <updated>2012-01-05T11:34:41Z</updated>

    <summary><![CDATA[Dan from eatdrinksleepmovabletype.com has released&nbsp;a new theme for Movable Type and Melody called&nbsp;'Patrick'. &nbsp;It sports an impressive 13 settings screens that let you change everything, from colours, columns, labels, headers and footers, but also if (and how) to display Facebook...]]></summary>
    <author>
        <name>Maarten Schenk</name>
        <uri>http://www.movabletips.com</uri>
    </author>
    
        <category term="Melody" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Plugins" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Templates" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="danwolfgang" label="Dan Wolfgang" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="eatdrinksleepmovabletype" label="eatdrinksleepmovabletype" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="melody" label="Melody" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="movabletype" label="Movable Type" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="patrick" label="Patrick" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="plugin" label="plugin" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="plugins" label="plugins" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="template" label="template" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="theme" label="theme" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-us" xml:base="http://www.movabletips.com/">
        <![CDATA[Dan from <a href="http://eatdrinksleepmovabletype.com">eatdrinksleepmovabletype.com</a> has <a href="http://eatdrinksleepmovabletype.com/plugins/theme_patrick/">released</a>&nbsp;a new theme for Movable Type and Melody called&nbsp;<a href="https://github.com/danwolfgang/melody-theme-patrick">'Patrick'</a>. &nbsp;It sports an impressive 13 settings screens that let you change everything, from colours, columns, labels, headers and footers, but also if (and how) to display Facebook comments, Twitter integration, highlighted entries, and much, much more.]]>
        <![CDATA[<div>It quite reminds me of TypePad's design editor, but with more features. &nbsp;Looks like this theme is a great way to quickly set up an unique design without needing to bother too much with template code, HTML or CSS. &nbsp;Sounds great for novice users. &nbsp;On the other hand, I think installing all the prerequisites might take some time, especially for novice users. &nbsp;But once you have it up and running on your installation, looks like you can just bang out one completely different blog after another without breaking a sweat. &nbsp;Cool!</div><div><br /></div>The theme is compatible with Melody and Movable Type 4.x (if you install a number of plugins). &nbsp;It can be downloaded <a href="https://github.com/danwolfgang/melody-theme-patrick">here</a>.]]>
    </content>
</entry>

<entry>
    <title>Best wishes for 2012!</title>
    <link rel="alternate" type="text/html" href="http://www.movabletips.com/2012/01/best-wishes-for-2012.html" />
    <id>tag:www.movabletips.com,2012://2.1740</id>

    <published>2012-01-05T10:51:18Z</published>
    <updated>2012-01-05T10:55:15Z</updated>

    <summary>Among my resolutions for the new year: be more active in updating this site again......</summary>
    <author>
        <name>Maarten Schenk</name>
        <uri>http://www.movabletips.com</uri>
    </author>
    
    
    <content type="html" xml:lang="en-us" xml:base="http://www.movabletips.com/">
        Among my resolutions for the new year: be more active in updating this site again...
        
    </content>
</entry>

<entry>
    <title>FacebookCommenters Plugin Broken, but Fix will be in MT5.13/4.38</title>
    <link rel="alternate" type="text/html" href="http://www.movabletips.com/2011/11/facebookcommenters-plugin-broken-but-fix-will-be-in-mt513438.html" />
    <id>tag:www.movabletips.com,2011://2.1683</id>

    <published>2011-11-10T10:11:14Z</published>
    <updated>2012-01-25T04:33:55Z</updated>

    <summary><![CDATA[The error "Error saving plugin settings: Could not register story template with Facebook: Unknown method" has been popping up more and more among users of the FacebookCommenters plugin for Movable Type. &nbsp;The cause is a change to the API at...]]></summary>
    <author>
        <name>Maarten Schenk</name>
        <uri>http://www.movabletips.com</uri>
    </author>
    
        <category term="Movable Type News" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Plugins" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Tricks and Workarounds" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="438" label="4.38" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="513" label="5.13" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="facebook" label="Facebook" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="facebookcommenters" label="FacebookCommenters" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="movabletype" label="Movable Type" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="plugin" label="plugin" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="plugins" label="plugins" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-us" xml:base="http://www.movabletips.com/">
        <![CDATA[The error "<span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: Arial, Verdana, sans-serif; font-size: 12px; line-height: 16px; ">Error saving plugin settings: Could not register story template with Facebook: Unknown method" has been <a href="http://forums.movabletype.org/2011/11/does-facebook-connect-work-with-mt-437.html">popping up more and more</a> among users of the FacebookCommenters plugin for Movable Type. &nbsp;The cause is a change to the API at Facebook. &nbsp;Six Apart is aware of the issue (check the <a href="https://movabletype.fogbugz.com/default.asp?106683#568050">Fogbugz ticket here</a> if you have access) and a fix has been committed but not released yet. &nbsp; I have been told the updated version of FacebookCommenters will be bundled with the upcoming Movable Type 5.13/4.38 release.</span>]]>
        
    </content>
</entry>

<entry>
    <title>New Ebook about Movable Type</title>
    <link rel="alternate" type="text/html" href="http://www.movabletips.com/2011/10/new-ebook-about-movable-type.html" />
    <id>tag:www.movabletips.com,2011://2.1673</id>

    <published>2011-10-31T09:36:37Z</published>
    <updated>2012-01-06T09:24:53Z</updated>

    <summary><![CDATA[I recently came across the blog of Sebastian Kleine, a German PHP coder. &nbsp;He wrote he recently had to use Movable Type for a work-related project, but couldn't find any good (recent) introductory books so he decided to write one...]]></summary>
    <author>
        <name>Maarten Schenk</name>
        <uri>http://www.movabletips.com</uri>
    </author>
    
        <category term="Movable Type News" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="amazon" label="Amazon" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="documentation" label="documentation" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="ebook" label="ebook" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="introduction" label="introduction" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="manual" label="manual" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="movabletype" label="Movable Type" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="sebastiankleine" label="Sebastian Kleine" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-us" xml:base="http://www.movabletips.com/">
        <![CDATA[I recently came across <a href="http://blog.sebastiankleine.de">the blog of Sebastian Kleine</a>, a German PHP coder. &nbsp;He wrote<a href="http://blog.sebastiankleine.de/archives/106-Ebook-about-Movable-Type.html"> he recently had to use Movable Type for a work-related project</a>, but couldn't find any good (recent) introductory books so he decided to write one himself. &nbsp;The result is <a href="http://www.amazon.de/gp/product/B005VTB090/ref=as_li_tf_tl?ie=UTF8&amp;tag=kleineweb-21&amp;linkCode=as2&amp;camp=1638&amp;creative=6742&amp;creativeASIN=B005VTB090">an ebook available from Amazon, titled 'Blogging with Movable Type'</a>. &nbsp;I haven't read it myself, but he describes it as:]]>
        <![CDATA[<blockquote class="webkit-indent-blockquote" style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: verdana, arial, helvetica, sans-serif; font-size: small; ">This ebook is a must have introduction to the blogging system Movable Type. It covers the basic topics starting with an introduction to what Movable Type is. It also handles the installation and configuration process. You can learn about how to create static pages and blog entries. It also gives hints about categorization and tagging and how to upload images and other files and add them to your blog entry.</span></div><div><span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: verdana, arial, helvetica, sans-serif; font-size: small; "><br /></span></div><div><span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: verdana, arial, helvetica, sans-serif; font-size: small; ">Another important topic is themes, design and templates. This ebook describes the basics and shows how to customize and improve your own theme. It also explains the different ways of publishing your content.</span></div><div><span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: verdana, arial, helvetica, sans-serif; font-size: small; "><br /></span></div><div><span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: verdana, arial, helvetica, sans-serif; font-size: small; ">This ebook is no complete reference, but gives a good introduction to Movable Type.</span></div></blockquote><div><br /></div><div>It sure sounds like it could be a good introduction for beginners, and people who need more information can always check the (free) manual at&nbsp;<a href="http://www.movabletype.org/documentation/">http://www.movabletype.org/documentation/</a>&nbsp;later.</div>]]>
    </content>
</entry>

<entry>
    <title>One Decade of Movable Type</title>
    <link rel="alternate" type="text/html" href="http://www.movabletips.com/2011/10/one-decade-of-movable-type.html" />
    <id>tag:www.movabletips.com,2011://2.1633</id>

    <published>2011-10-10T18:40:46Z</published>
    <updated>2011-11-23T12:40:55Z</updated>

    <summary><![CDATA[I missed it because I was abroad, but last saturday was Movable Type's 10th birthday. &nbsp;To celebrate, Six Apart has posted some stats about the recent development activity and a picture of a lovely birthday cake. &nbsp;Happy birthday MT! &nbsp;You...]]></summary>
    <author>
        <name>Maarten Schenk</name>
        <uri>http://www.movabletips.com</uri>
    </author>
    
        <category term="Movable Type News" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="10years" label="10 years" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="anniversary" label="Anniversary" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="movabletype51" label="movable type 5.1" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="sixapart" label="Six Apart" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-us" xml:base="http://www.movabletips.com/">
        <![CDATA[I missed it because I was abroad, but last saturday was Movable Type's 10th birthday. &nbsp;To celebrate, Six Apart has posted <a href="http://www.movabletype.org/2011/10/status_of_movable_type_development.html">some stats about the recent development activity and a picture of a lovely birthday cake</a>. &nbsp;Happy birthday MT! &nbsp;You certainly changed my life.]]>
        <![CDATA[On october 8th 2001, I was still working at <a href="http://www.skynet.be">Skynet</a> (a Belgian ISP/portal site) and had just discovered what blogs were in the aftermath of 9/11. &nbsp;This lead to my proposal to the CEO some time later that Skynet should have a blogging service, which became <a href="http://www.skynetblogs.be">skynetblogs.be</a>, the first Dutch language blogging service in Belgium. &nbsp;This in turn lead to me meeting <a href="http://loiclemeur.com/english/">Loic Le Meur</a>, who hired me at Six Apart Europe to do support on TypePad (which is heavily related to MT) in Europe, and later on work on MT projects &amp; support as well. &nbsp;During that time I worked for many clients who had diverse MT installations, and I'm happy to say that I still work for many of them since starting my own MT services company <a href="http://www.yesitcan.be">YesItCan.be</a> in early 2010.<div><br /></div><div>I wish MT the best for the future, and I'm looking forward to many more versions!</div>]]>
    </content>
</entry>

<entry>
    <title>Publishing Related Entries Lists (That Stay Updated) with Movable Type </title>
    <link rel="alternate" type="text/html" href="http://www.movabletips.com/2011/09/publishing-related-entries-lists-that-stay-updated-with-movable-type.html" />
    <id>tag:www.movabletips.com,2011://2.1606</id>

    <published>2011-09-19T20:59:22Z</published>
    <updated>2011-09-19T21:26:44Z</updated>

    <summary><![CDATA[Having a list of related, similar entries below each entry in your blog is a good way to entice your readers to stay on your site longer. &nbsp;But how do you generate such a list, making sure only the most...]]></summary>
    <author>
        <name>Maarten Schenk</name>
        <uri>http://www.movabletips.com</uri>
    </author>
    
        <category term="Plugins" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Tricks and Workarounds" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="endevver" label="Endevver" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="plugin" label="plugin" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="plugins" label="plugins" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="related" label="related" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="relatedentries" label="related entries" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="templates" label="templates" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="trick" label="trick" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-us" xml:base="http://www.movabletips.com/">
        <![CDATA[Having a list of related, similar entries below each entry in your blog is a good way to entice your readers to stay on your site longer. &nbsp;But how do you generate such a list, making sure only the most relevant entries are listed? &nbsp;And how can such a list be kept up to date, especially on older entries?&nbsp;]]>
        <![CDATA[There is the classical way: get the main category of the entry, and display a list of entries in the same category, using a code snippet like this below each entry:<div><br /></div><div><span class="Apple-style-span" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; "><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:categorylabel setvar="thecategory"&gt;</span></span></div><div><span class="Apple-style-span" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; "><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:if name="thecategory&gt;</span><br /><span class="xml-punctuation" style="color: black; ">&lt;</span><span class="xml-tagname" style="color: rgb(170, 0, 187); ">h1</span><span class="xml-punctuation" style="color: black; ">&gt;</span><span class="xml-text" style="color: black; ">Related entries:</span><span class="js-operator" style="color: rgb(102, 102, 102); ">&lt;</span><span class="js-string" style="color: rgb(170, 34, 34); ">/h1&gt;</span></span><span class="Apple-style-span" style="font-family: monospace; line-height: 16px; white-space: nowrap; "><font class="Apple-style-span" color="#aa7700"><br /></font><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:entries category="$thecategorylabel"&gt;</span><br /><span class="xml-text" style="color: black; ">...</span><br /><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;/mt:entries&gt;</span><span class="xml-text" style="color: black; ">​​​​​​​​​​​​​​​​​</span><span style="color: rgb(102, 102, 102); ">​</span></span></div><div><span class="Apple-style-span" style="color: rgb(170, 119, 0); font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;/mt:if&gt;</span></div><div><br /></div><div>A little more sophisticated is to use the tags of the current entry as a basis for loading other entries:</div><div><br /></div><div><span class="Apple-style-span" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; "><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:setvarblock name="searchoptions"&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:entrytags glue=" OR "&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:tagname&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;/mt:entrytags&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;/mt:setvarblock&gt;</span><br /><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:if name="searchoptions"&gt;</span><br /><span class="xml-punctuation" style="color: black; ">&lt;</span><span class="xml-tagname" style="color: rgb(170, 0, 187); ">h1</span><span class="xml-punctuation" style="color: black; ">&gt;</span><span class="xml-text" style="color: black; ">Related entries:</span><span class="js-operator" style="color: rgb(102, 102, 102); ">&lt;</span><span class="js-string" style="color: rgb(170, 34, 34); ">/h1&gt;</span><br /><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:entries category="$searchoptions"&gt;</span><br /><span class="xml-text" style="color: black; ">...</span><br /><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;/mt:entries&gt;</span><br /><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;/mt:if&gt;</span></span></div><div><br /></div><div>If you use many tags on your site, the above solution might return many matches based on only one or two (very frequent or common) tags. &nbsp;To avoid this, you could use following snippet, which actually counts the number of matching tags and displays the entries with the most matches:</div><div><br /></div><div><span class="Apple-style-span" style="font-family: monospace; line-height: 16px; white-space: nowrap; "><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:entrytags&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:tagname setvar="thetag"&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:var name="tags{$thetag}" value="1"&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;/mt:entrytags&gt;</span><br /><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:setvarblock name="searchoptions"&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:entrytags glue=" OR "&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:tagname&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;/mt:entrytags&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;/mt:setvarblock&gt;</span></span></div><div><span class="Apple-style-span" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; "><span class="mt-tag" style="color: rgb(170, 119, 0); "><br /></span></span></div><div><span class="Apple-style-span" style="color: rgb(102, 102, 102); font-family: monospace; line-height: 16px; white-space: nowrap; "><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:if name="searchoptions"&gt;</span><br /><span class="xml-punctuation" style="color: black; ">&lt;</span><span class="xml-tagname" style="color: rgb(170, 0, 187); ">h1</span><span class="xml-punctuation" style="color: black; ">&gt;</span><span class="xml-text" style="color: black; ">Related entries:</span><span class="js-operator" style="color: rgb(102, 102, 102); ">&lt;</span><span class="js-string" style="color: rgb(170, 34, 34); ">/h1&gt;</span></span><span class="Apple-style-span" style="font-family: monospace; line-height: 16px; white-space: nowrap; "><font class="Apple-style-span" color="#aa7700"><br /></font><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:entryid setvar="thisentryid"&gt;</span><br /><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:entries tags="$searchoptions"&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:unless tag="entryid" eq="$thisentryid"&gt;</span><br /><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:var name="matches" value="0"&gt;</span><br /><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:entrytags&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:tagname setvar="thetag"&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:if name="tags{$thetag}"&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:var name="matches" op="+" value="1" setvar="matches"&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;/mt:if&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;/mt:entrytags&gt;</span><br /><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:setvarblock name="theentry"&gt;</span><br /><font class="Apple-style-span" color="#000000">...<br /></font><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;/mt:setvarblock&gt;</span><br /><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:var name="allentries{$theentry}" value="$matches"&gt;</span><br /><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;/mt:unless&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;/mt:entries&gt;</span><br /><br /><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:loop name="allentries" sort_by="value numeric reverse"&gt;</span><br /><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:unless name="__counter__" gt="5"&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;mt:var name="__key__"&gt;</span><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;/mt:unless&gt;</span><br /><span class="mt-tag" style="color: rgb(170, 119, 0); ">&lt;/mt:loop&gt;</span></span></div><div><span class="Apple-style-span" style="color: rgb(170, 119, 0); font-family: monospace; line-height: 16px; white-space: nowrap; ">&lt;/mt:if&gt;</span></div><div><br /></div><div>A little explanation: in the first line, the 'tags' hash is filled with all the tags for the current entry. &nbsp;The second line is similar to the previous code snippet, as are most of the following lines: we grab the tags of the current entry and select entries that share one or more of the same tags. Where things get interesting is inside the mt:entries loop. &nbsp;A 'matches' variable is set to zero, and it is incremented by one each time one of the tags of the current entry is present in the tags hash containing the tags of the 'original' entry. &nbsp;Finally, we store whatever we want to display of the current entry in the 'theentry' variable, and we use this variable as the key in the 'allentries' hash, with the number of matches as the value.</div><div><br /></div><div>Finally, we loop over this hash, in reverse numerical order by value, meaning the entries with most matches come first.</div><div><br /></div><div>This will give us a nice list of entries that share tags with the current entry, which is exactly what we need.</div><div><br /></div><div>Only one problem remains: what if a newer entry is written that has many tags in common with one or more older entries? &nbsp;How can we make sure these entries receive an update so their 'Related entries' list is brought up to date? &nbsp;Republishing the entire blog is a possibility, but not really practical if you have a large blog.</div><div><br /></div><div>A better way is to use <a href="https://github.com/endevver/mt-plugin-related-entries">Endevver's Related Entries plugin</a>, which automatically republishes all entries that share a tag with an entry that is being saved or published. If you have many entries sharing similar tags it could still be a drain on resources, but it is better than doing a full republish! &nbsp;And of course you can use background publishing.</div><div><br /></div><div><br /></div>]]>
    </content>
</entry>

<entry>
    <title>Movable Tips is on a new server!</title>
    <link rel="alternate" type="text/html" href="http://www.movabletips.com/2011/09/movable-tips-is-on-a-new-server.html" />
    <id>tag:www.movabletips.com,2011://2.1569</id>

    <published>2011-09-07T18:47:17Z</published>
    <updated>2011-09-07T18:49:15Z</updated>

    <summary><![CDATA[I have moved this site (and a lot of other projects) to a brand new server at a new hosting provider. &nbsp;If you see anything strange, let me know!...]]></summary>
    <author>
        <name>Maarten Schenk</name>
        <uri>http://www.movabletips.com</uri>
    </author>
    
    <category term="migration" label="migration" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="movabletips" label="movabletips" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="server" label="server" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-us" xml:base="http://www.movabletips.com/">
        <![CDATA[<span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; "><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 10px; padding-right: 10px; padding-bottom: 10px; padding-left: 10px; height: 90%; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(255, 255, 255); color: rgb(51, 51, 51); font: normal normal normal 13px/normal arial, helvetica, hirakakupro-w3, osaka, 'ms pgothic', sans-serif; background-position: initial initial; background-repeat: initial initial; ">I have moved this site (and a lot of other projects) to a brand new server at a new hosting provider. &nbsp;If you see anything strange, let me know!</div></span> ]]>
        
    </content>
</entry>

<entry>
    <title>Movable Type on Twitter</title>
    <link rel="alternate" type="text/html" href="http://www.movabletips.com/2011/08/movable-type-on-twitter.html" />
    <id>tag:www.movabletips.com,2011://2.1512</id>

    <published>2011-08-15T17:56:23Z</published>
    <updated>2011-08-15T17:59:22Z</updated>

    <summary><![CDATA[So I'm back from my holiday and what do I see on Twitter?&nbsp; Six Apart Japan has revived the @movabletype twitter account.&nbsp; Curious to see what they'll post......]]></summary>
    <author>
        <name>Maarten Schenk</name>
        <uri>http://www.movabletips.com</uri>
    </author>
    
        <category term="Movable Type News" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="movabletype" label="Movable Type" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="movabletype" label="movabletype" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="sixapartkk" label="Six Apart KK" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="twitter" label="twitter" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-us" xml:base="http://www.movabletips.com/">
        <![CDATA[So I'm back from my holiday and what do I see on Twitter?&nbsp; Six Apart Japan has revived the <a href="http://twitter.com/#%21/movabletype">@movabletype</a> twitter account.&nbsp; Curious to see what they'll post... ]]>
        
    </content>
</entry>

<entry>
    <title>Setting the Default Order of Custom Fields on Movable Type/Melody Entries or Pages for All Users of a Blog</title>
    <link rel="alternate" type="text/html" href="http://www.movabletips.com/2011/08/setting-the-default-order-of-custom-fields-on-movable-typemelody-entries-or-pages-for-all-users-of-a.html" />
    <id>tag:www.movabletips.com,2011://2.1471</id>

    <published>2011-08-09T13:14:50Z</published>
    <updated>2011-08-22T07:44:30Z</updated>

    <summary>Using the standard &apos;Display options&apos; link in the create/edit entry or page screens in Movable Type 4 or Melody you can reorder and toggle the display of the various custom fields that you may or may not have added to...</summary>
    <author>
        <name>Maarten Schenk</name>
        <uri>http://www.movabletips.com</uri>
    </author>
    
        <category term="Melody" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Plugins" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="blogsettings" label="blog settings" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="customfields" label="custom fields" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="default" label="default" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="endevver" label="endevver" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="melody" label="Melody" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="movabletype4" label="Movable Type 4" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="ordering" label="ordering" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="plugin" label="plugin" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="plugins" label="plugins" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-us" xml:base="http://www.movabletips.com/">
        <![CDATA[Using the standard 'Display options' link in the create/edit entry or page screens in Movable Type 4 or Melody you can reorder and toggle the display of the various custom fields that you may or may not have added to entries or pages on your blog or installation. &nbsp;But once you save the ordering and visibility you like, it is only valid for the user account you are currently logged in with. &nbsp;Changing the default order and visibility for all users on a blog used to involve either logging in as all of them one by one and changing the settings manually, or some pretty hairy database manipulation. &nbsp;But now there is a better way.]]>
        <![CDATA[Recently, <a href="http://www.endevver.com">Endevver</a> released a plugin called <a href="https://github.com/endevver/mt-plugin-ordered-cf/">Ordered CF</a> that allows any system or blog administrator to check an additional box in the display options, making the settings the default ones for the blog. &nbsp;As I'm fond of saying here: nice!<div><br /></div><div><img alt="ordered-cf.png" src="http://www.movabletips.com/ordered-cf.png" width="250" height="361" class="mt-image-none" style="" /></div><div><br /></div>]]>
    </content>
</entry>

<entry>
    <title>New Melody/Movable Type Plugin Lets You Click Tags Instead of Typing Them</title>
    <link rel="alternate" type="text/html" href="http://www.movabletips.com/2011/08/new-melodymovable-type-plugin-lets-you-click-tags-instead-of-typing-them.html" />
    <id>tag:www.movabletips.com,2011://2.1470</id>

    <published>2011-08-05T12:48:24Z</published>
    <updated>2011-12-02T08:49:39Z</updated>

    <summary><![CDATA[Last week&nbsp;Endevver released a new plugin (Click Tagging) for Melody/Movable Type 4 that modifies the tag section of the edit entry/page screen, allowing you to click a list of your blog's existing tags to tag an entry or page, instead...]]></summary>
    <author>
        <name>Maarten Schenk</name>
        <uri>http://www.movabletips.com</uri>
    </author>
    
        <category term="Melody" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Plugins" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="clicktagging" label="click tagging" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="endevver" label="endevver" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="melody" label="Melody" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="movabletype" label="Movable Type" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="plugin" label="plugin" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="tagging" label="tagging" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="tags" label="tags" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-us" xml:base="http://www.movabletips.com/">
        <![CDATA[Last week&nbsp;<a href="http://www.endevver.com">Endevver</a> released a new plugin (<a href="https://github.com/endevver/mt-plugin-click-tagging">Click Tagging</a>) for Melody/Movable Type 4 that modifies the tag section of the edit entry/page screen, allowing you to click a list of your blog's existing tags to tag an entry or page, instead of typing them. &nbsp;Of course you can still add new tags by typing them by hand (but this function can be reserved for blog administrators only if needed). &nbsp;This seems like a great plugin for sites that use a limited set of tags: clicking saves a lot of typing and avoids different spellings of the same tag. &nbsp;]]>
        <![CDATA[The plugin documentation comes with a screenshot that nicely illustrates the functionality:<div><a href="http://www.movabletips.com/assets_c/2011/07/click-tagging-292.html" onclick="window.open('http://www.movabletips.com/assets_c/2011/07/click-tagging-292.html','popup','width=606,height=185,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img src="http://www.movabletips.com/assets_c/2011/07/click-tagging-thumb-600x183-292.png" width="600" height="183" alt="click-tagging.png" class="mt-image-none" style="" /></a></div><div><br /></div><div>And here is another screenshot illustrating the plugin's settings screen:</div><div><br /></div><div><a href="http://www.movabletips.com/assets_c/2011/07/click-tagging2-295.html" onclick="window.open('http://www.movabletips.com/assets_c/2011/07/click-tagging2-295.html','popup','width=677,height=232,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img src="http://www.movabletips.com/assets_c/2011/07/click-tagging2-thumb-600x205-295.png" width="600" height="205" alt="click-tagging2.png" class="mt-image-none" style="" /></a></div><div><br /></div>]]>
    </content>
</entry>

<entry>
    <title>Video: Copy-Pasting from Microsoft Word to Movable Type</title>
    <link rel="alternate" type="text/html" href="http://www.movabletips.com/2011/08/video-copy-pasting-from-microsoft-word-to-movable-type.html" />
    <id>tag:www.movabletips.com,2011://2.1466</id>

    <published>2011-08-01T06:00:00Z</published>
    <updated>2011-08-22T07:54:38Z</updated>

    <summary>If you ever need to copy-paste some text from Microsoft Word to Movable Type, but you don&apos;t want to bring along font sizes, colours, styles, tables and the like while still keeping your paragraphs and line breaks intact, here is...</summary>
    <author>
        <name>Maarten Schenk</name>
        <uri>http://www.movabletips.com</uri>
    </author>
    
        <category term="Tricks and Workarounds" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="adamtinworth" label="Adam Tinworth" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="copy" label="copy" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="copypaste" label="copy-paste" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="microsoftword" label="Microsoft Word" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="movabletype" label="Movable Type" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="paste" label="paste" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="video" label="video" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="word" label="Word" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-us" xml:base="http://www.movabletips.com/">
        <![CDATA[If you ever need to copy-paste some text from Microsoft Word to Movable Type, but you don't want to bring along font sizes, colours, styles, tables and the like while still keeping your paragraphs and line breaks intact, here is a short video by <a href="http://www.onemanandhisblog.com/">Adam Tinworth</a> explaining how to do it (from 2008 but the trick still works, and it seems only 88 people watched it since then; let's see if we can increase that number a bit). &nbsp;]]>
        <![CDATA[<div><br /></div><iframe width="560" height="349" src="http://www.youtube.com/embed/yA8Ezi_g3iI" frameborder="0" allowfullscreen=""></iframe>]]>
    </content>
</entry>

<entry>
    <title>Six Apart Announces New &apos;Movable Type Announcements&apos; Mailing List</title>
    <link rel="alternate" type="text/html" href="http://www.movabletips.com/2011/07/six-apart-announces-new-movable-type-announcements-mailing-list.html" />
    <id>tag:www.movabletips.com,2011://2.1472</id>

    <published>2011-07-29T13:45:57Z</published>
    <updated>2011-08-22T07:57:20Z</updated>

    <summary><![CDATA[Six Apart Japan has annouced the launch of a new mailing list where the Movable Type development team will post announcements related to the development of Movable Type. &nbsp;You can subscribe to it here:&nbsp;http://ml.sixapart.com/mailman/listinfo/mt-announce. &nbsp;I have subscribed the Movable Type...]]></summary>
    <author>
        <name>Maarten Schenk</name>
        <uri>http://www.movabletips.com</uri>
    </author>
    
        <category term="Movable Type News" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="mailinglist" label="mailing list" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="movabletypeandmelodycommunityfeed" label="Movable Type and Melody Community Feed" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="movabletypecommunity" label="Movable Type Community" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="sixapart" label="Six Apart" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="sixapartkk" label="Six Apart KK" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-us" xml:base="http://www.movabletips.com/">
        <![CDATA[Six Apart Japan has annouced the launch of a new mailing list where the Movable Type development team will post announcements related to the development of Movable Type. &nbsp;You can subscribe to it here:&nbsp;<a href="http://ml.sixapart.com/mailman/listinfo/mt-announce">http://ml.sixapart.com/mailman/listinfo/mt-announce</a>. &nbsp;I have subscribed the <a href="http://www.movabletips.com/movable_type_and_melody_community_feed">Movable Type and Melody Community Feed</a> to it as well (using the <a href="https://github.com/danwolfgang/mt-plugin-post-office">Post Office plugin</a>) so any announcements made to the list will also show up there automatically.]]>
        
    </content>
</entry>

<entry>
    <title>Undocumented &apos;to_json&apos; Modifier in Movable Type 5 for Direct JSON-format Output</title>
    <link rel="alternate" type="text/html" href="http://www.movabletips.com/2011/07/undocumented-to-json-modifier-in-movable-type-5-for-direct-json-format-output.html" />
    <id>tag:www.movabletips.com,2011://2.1458</id>

    <published>2011-07-27T13:40:15Z</published>
    <updated>2011-07-27T14:28:34Z</updated>

    <summary><![CDATA[This Japanese blog post alerted me to the existence of an undocumented 'to_json' modifier in Movable Type 5. &nbsp;There is a well documented list of global modifiers like encode_html, trim, capitalize... available here, but 'to_json' seems to be missing from...]]></summary>
    <author>
        <name>Maarten Schenk</name>
        <uri>http://www.movabletips.com</uri>
    </author>
    
        <category term="Templates" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Tricks and Workarounds" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="documentation" label="documentation" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="json" label="json" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="movabletype" label="Movable Type" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="movabletype5" label="Movable Type 5" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="to_json" label="to_json" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="undocumented" label="undocumented" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-us" xml:base="http://www.movabletips.com/">
        <![CDATA[<a href="http://linker.in/journal/2011/07/movable-typejsonto-json.php">This Japanese blog post</a> alerted me to the existence of an undocumented 'to_json' modifier in Movable Type 5. &nbsp;There is <a href="http://www.movabletype.org/documentation/appendices/modifiers/">a well documented list of global modifiers like encode_html, trim, capitalize... available here</a>, but 'to_json' seems to be missing from that list or any other place in the documentation. &nbsp;What does it do?]]>
        <![CDATA[<div><a href="http://en.wikipedia.org/wiki/JSON">JSON (JavaScript Object Notation)</a> is a popular data format that is used by many applications to store/transmit/receive hierarchically organised information, like the properties of a list of items. &nbsp;The 'to_json' attribute in Movable Type lets you output data stored in array and hash variables directly in JSON format, without the need for additional loop tags or template code. &nbsp;</div><div><br /></div>Consider this snippet of template code:<div><br /></div><blockquote class="webkit-indent-blockquote" style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><div>&lt;mt:setvarblock name="item{color}"&gt;blue&lt;/mt:setvarblock&gt;</div></div><div><div>&lt;mt:setvarblock name="item{id}"&gt;5&lt;/mt:setvarblock&gt;</div></div><div><div>&lt;mt:setvarblock name="item{status}"&gt;OK&lt;/mt:setvarblock&gt;</div></div><div><div><br /></div></div><div><div>&lt;mt:var name="item" to_json="1"&gt;</div></div></blockquote><div><div><br /></div><div>This will result in:</div><div><br /></div></div><blockquote class="webkit-indent-blockquote" style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; ">{"color":"blue","status":"OK","id":"5"}</span></div></blockquote><blockquote class="webkit-indent-blockquote" style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><div><br /></div></div></blockquote><div>Or with a simple array:</div><div><br /></div><blockquote class="webkit-indent-blockquote" style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><div>&lt;mt:var name="items[0]" value="zero"&gt;</div></div><div><div>&lt;mt:var name="items[1]" value="one"&gt;</div></div><div><div>&lt;mt:var name="items[2]" value="two"&gt;</div></div><div><div>&lt;mt:var name="items[3]" value="three"&gt;</div></div><div><div><br /></div></div><div><div>&lt;mt:var name="items" to_json="1"&gt;</div></div></blockquote><div><br /></div><div>Which results in:</div><div><br /></div><blockquote class="webkit-indent-blockquote" style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; ">["zero","one","two","three"]</span></div></blockquote><div><br /></div><div>It even works recursively:</div><div><br /></div><blockquote class="webkit-indent-blockquote" style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><div>&lt;mt:setvarblock name="item{color}"&gt;blue&lt;/mt:setvarblock&gt;</div></div><div><div>&lt;mt:setvarblock name="item{id}"&gt;5&lt;/mt:setvarblock&gt;</div></div><div><div>&lt;mt:setvarblock name="item{status}"&gt;OK&lt;/mt:setvarblock&gt;</div></div><div><div><br /></div></div><div><div>&lt;mt:var name="items{first}" value="$item"&gt;</div></div><div><div><br /></div></div><div><div>&lt;mt:setvarblock name="item{color}"&gt;red&lt;/mt:setvarblock&gt;</div></div><div><div>&lt;mt:setvarblock name="item{id}"&gt;7&lt;/mt:setvarblock&gt;</div></div><div><div>&lt;mt:setvarblock name="item{status}"&gt;INACTIVE&lt;/mt:setvarblock&gt;</div></div><div><div><br /></div></div><div><div>&lt;mt:var name="items{second}" value="$item"&gt;</div></div><div><div><br /></div></div><div><div>&lt;mt:var name="items" to_json="1"&gt;</div></div></blockquote><div><br /></div><div>This results in:</div><div><br /></div><blockquote class="webkit-indent-blockquote" style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: medium; ">{"first":{"color":"blue","status":"OK","id":"5"},"second":{"color":"red","status":"INACTIVE","id":"7"}}</span></div></blockquote><div><br /></div><div>Neat! &nbsp;I'm sure this will come in handy if you ever need to export large amounts of data from Movable Type in JSON format...<br /><div><div><br /></div></div></div>]]>
    </content>
</entry>

<entry>
    <title>Displaying Entries Not in a Category in Movable Type</title>
    <link rel="alternate" type="text/html" href="http://www.movabletips.com/2011/07/displaying-entries-not-in-a-category-in-movable-type.html" />
    <id>tag:www.movabletips.com,2011://2.1436</id>

    <published>2011-07-20T13:40:44Z</published>
    <updated>2011-07-20T13:55:23Z</updated>

    <summary><![CDATA[It is quite simple to list all (or some) entries in one or more categories using Movable Type's MTEntries tag in combination with the 'category' or 'categories' attribute. &nbsp;But what if you need to display just the entries that are...]]></summary>
    <author>
        <name>Maarten Schenk</name>
        <uri>http://www.movabletips.com</uri>
    </author>
    
        <category term="Templates" scheme="http://www.sixapart.com/ns/types#category" />
    
        <category term="Tricks and Workarounds" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="and" label="and" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="categories" label="categories" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="categoryless" label="categoryless" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="mtentries" label="mtentries" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="nocategory" label="no category" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="not" label="not" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="notincategory" label="not in category" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="templating" label="templating" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en-us" xml:base="http://www.movabletips.com/">
        <![CDATA[It is quite simple to list all (or some) entries in one or more categories using Movable Type's <a href="http://www.movabletype.org/documentation/appendices/tags/entries.html">MTEntries</a> tag in combination with the<a href="http://www.movabletype.org/documentation/appendices/tags/entries.html#category"> 'category' or 'categories' attribute</a>. &nbsp;But what if you need to display just the entries that are *not* in a category? I was recently faced with this problem, and here is the solution I came up with:]]>
        <![CDATA[<blockquote class="webkit-indent-blockquote" style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><div>&lt;mt:setvarblock name="nocategories"&gt;&lt;mt:categories glue=" AND "&gt;NOT &lt;mt:categorylabel&gt;&lt;/mt:categories&gt;&lt;/mt:setvarblock&gt;</div><div>&lt;mt:entries categories="$nocategories"&gt;</div><div>&lt;li&gt;&lt;mt:entrytitle&gt;&lt;/li&gt;</div><div>&lt;/mt:entries&gt;</div></div></blockquote><div><br /></div><div>Basically, this snippet of code generates a list of all categories in your blog, each one preceded by 'NOT' and joined together by 'AND'. &nbsp;So this results in something like "NOT Sports AND NOT Current Affairs AND NOT Humor AND NOT News". &nbsp;This list is then used in the 'categories' attribute of an MTEntries tag, resulting in a listing of all entries that are not in any of the mentioned categories. &nbsp;Perfect!</div>]]>
    </content>
</entry>

</feed>

