Not a developer? Go to


Reports from the Upgrade-a-thon

By Byrne Reese
Posted August 13, 2007, in Tips & Tricks.

Last week's Movable Type 4.0 events were a huge success. On Tuesday we hosted a day long "Upgrade-a-thon" where we invited people to join us in Movable Type's IRC chat room and on the phone to help a number of people with migrating to Movable Type from other platforms as well upgrading older versions of Movable Type to the latest and greatest MT4. Lots of people successfully upgraded that day using the Movable Type 4.0 Upgrade Guide, and many more reported having successfully upgraded earlier on in Movable Type 4.0's beta process.

I would like to thank everyone who participated that day. Your feedback and your many questions allowed us to refine our documentation even further in order to pave the way for even more MT4 converts. Who knew that just by asking questions you would be helping others?

We learned a lot about how to upgrade to MT4. So we thought we'd share it with you.

What follows are some of the most frequently asked questions from that day with links to the documentation that resulted from those questions. If one of your questions was not answered, then please, attach a comment to this post and we will do our best to help you. And don't forget, the #movabletype chatroom is always full of people waiting to help. The docs are the best place to start.

Movable Type 4's all-new documentation is the best place to start if you want to upgrade. If you're not the RTFM type, the key docs you're looking for are:

I heard that Publish Queue was bundled now, how do I set that up?

Publish Queue (formerly Rebuild Queue) was an extremely popular plugin built on top of Movable Type 3.x. The plugin manages all publishing on a system through a separate daemon process dramatically improving performance, reliability and scalability. We felt that it was so valuable to Movable Type users that we incorporated it into the core engine of MT4.

To help users take advantage of Movable Type's publishing queue capability, we have published a Publish Queue How-To with information on how to use this new feature so that you don't have to wait for pages to publish after you create them.

How do I upgrade my 3.x templates to 4.0 templates?

Movable Type 4.0 has introduced a number of enhancements to its default templates which can help increase the performance associated with publishing pages and entries. It's important to note that your templates from MT 3.x should just work. (The only exception is some templates that use uncommon plugins for template tags.) But lots of you want to transition parts of your sites and templates to take advantage of these enhancements, without having to completely overhaul your blog's HTML. To help you through this process we published a guide to upgrading your site's templates to take advantage of MT4.

Where can I find a page template?

We believe strongly that your site's templates are sacred. As a result MT4 will never modify your templates on its own (except for "System Templates" which are managed by the app itself) during the upgrade process. That means there's no risk of inadvertently disturbing your site's design or functionality. There's one tricky part to following that rule: If you want to use Movable Type 4's new Page feature, you'll need to add a Page Archive template manually. We have made two copies of this template available, depending on whether you're using all the new templates or not:

  • Page Template using MT4's Style - this utilizes a number of template modules and includes as well as the HTML and CSS now standard to all MT4 blogs.
  • Page Template using MT3's Style - this uses a single template with no dependencies on other modules, as well as the HTML and CSS that was standard to older versions of Movable Type.
Is there a list of new template tags for MT4?

Movable Type 4.0 has introduced over 70 new template tags in MT4.0. You can view a complete list of all of Movable Type 4.0's template tags in the appendices of our documentation. New template tags are indicated with a icon.

Where can I find MT4's default templates?

Movable Type 4.0 makes a number of changes to its default templates outlined in our Guide to Upgrading Your Templates. If you want to compare the differences for yourself, take a look at all of the default templates online. In the future we will make alternative versions of these templates available at the same URL.

Where can I find a list of plugins that work with Movable Type 4.0?

Shhh... we haven't officially announced it yet, but we are working on an all-new Movable Type Plugin Directory. Many of our developers have already released updates to existing plugins in addition to creating some new ones that work exclusively with Movable Type 4 (like Bookmarks and Template Shelf).

I am having a hard time getting captchas to work, can you help?

Movable Type 4.0 comes with captcha support built into the core application to help combat comment spam. We have found that a number of users have had difficulty getting this feature to work because some servers are missing a bit of required software. Here's a quick summary of what we've found:  the use of captchas requires Image::Magick to be installed, and captchas specifically require PNG support to be included in your Image::Magick install.

Movable Type is capable of detecting that users have Image::Magick installed, but it can't tell if PNG support is specifically enabled. So, MT will sometimes say that all its prerequisite have been met, when in fact they aren't. We will be updating our documentation with this new information, and look for a way to detect this prerequisite within the application. Sorry for the complexity with this feature on some servers.


Fumiaki Yoshimatsu

Fumiaki Yoshimatsu on August 13, 2007, 5:43 p.m. Reply

I would like to add that for those users who found difficulty in their hosting support to the default captcha provider, Movable Type 4 also includes a sample plugin called “reCaptcha”, which uses as the online captcha provider. Because it requires Javascript calls to show captcha image, it requires a bit of template edits to make captcha image appear. Here’s how to use the plugin to use reCaptcha as your captcha provider:

  1. Copy the reCaptcha folder under plugins directory.
  2. Choose reCaptcha as the blog’s captcha provider.
  3. Edit Comment Form template, so it renders MTCaptchaFields unconditionally. In practice, this means replacing these lines <MTIfNonEmpty tag=”MTCaptchaFields”> <MTIfCommentsAccepted><MTIfRegistrationAllowed><MTElse><$MTCaptchaFields$></MTIfRegistrationAllowed></MTIfCommentsAccepted> <div id=”comments-open-captcha”> </div> </MTIfNonEmpty> to these lines: <MTIfNonEmpty tag=”MTCaptchaFields”> <div id=”comments-open-captcha”> <$MTCaptchaFields$> </div> </MTIfNonEmpty>
  4. Edit Javascipt index template, to remove these lines of code which calls delayShowCaptcha: <MTIfNonEmpty tag=”MTCaptchaFields”> captcha_timer = setInterval(‘delayShowCaptcha()’, 1000); </MTIfNonEmpty>
  5. Rebuild index and individual entry archive.

Bud on August 13, 2007, 5:51 p.m. Reply

Byrne, a few remarks regarding CAPTCHAs that I finally figured out, some with the help of Chris Hall. Image Magick is only part of the story. Here’s some other information that proved to be relevant:

  1. If your cgi-bin directory is not a subdirectory of your html directory, then you have to set a directive called CaptchaSourceImageBase in your mt-config.cgi file. This directive must be set to the absolute path where /mt-static/images/captcha-source is found on your system.

  2. In the UI up to this point, the directive has been MISLABELED CaptchaImageSourceBase. It was actually the first thing I tried over a month ago when I first noticed this.

  3. If you have shell access to your web hosting account, you can run this perl script to make sure Perl::Magick is able to process png files. You will have to upload these image files named rich.png and yan.png to your home directory to test it:


use Image::Magick;

my($image, $x);

$image = Image::Magick->new; $x = $image->Read(‘yan.png’, ‘rich.png’); warn “$x” if “$x”;

$x = $image->Crop(geometry=>’100x100+100+100’); warn “$x” if “$x”;

$x = $image->Write(‘x.png’); warn “$x” if “$x”;

It turned out for me that the first two points solved my issue on both servers where I tried to get CAPTCHAs to work. This last point just helped determine that it was not image magick causing the problem.


Skye on December 13, 2007, 12:12 p.m. Reply

The page templates using MT3 styles give the following errors:

One or more errors were found in this template.

* <MTPageTrackbackData> at line 16 is unrecognized.
* <MTPageTrackbackLink> at line 245 is unrecognized.
* <MTPageCommentCount> at line 1402 is unrecognized.
* <MTPageIfCommentsOpen> at line 7774 is unrecognized.
Jitterbean Girl

Jitterbean Girl on January 6, 2008, 2:34 p.m. Reply

Now that I’ve upgraded to MT4 from 3.2, no entries are appearing in the Manage Entries section for any of my blogs. The entries are still there, but I have no direct way of accessing them. Strangely, when I go to the page for the blog in MT it shows a list of the most recent 10 entries but, again, whenever I try to get to the manage entries options there is nothing shown. So currently when I need to edit an older entry what I have to do is find a comment made on that entry, access the comment through the manage comments system, and then click on the entry title to edit it. What can I do to fix this problem? Thanks!

free slots usa

free slots usa on December 28, 2008, 5:26 a.m. Reply

Great post. For those people who still don’t know there is “reCaptcha”, that uses as the online captcha provider. It’s great and very useful. Although I must say it’s a bit frustrating… One more thing - the MT4 from 3.2 is far from being perfect - there is no way to access the entries. Yours, Melanie


Wuein on June 29, 2012, 12:27 p.m. Reply

Yay for the “reCaptcha” plugin! Overall everything seems to be running fine. :)

Rosica Robinson

Rosica Robinson on August 2, 2012, 10:21 p.m. Reply

Where do you do such conversations like these in IRC channels? It would be interesting to join and learn. Thank you in advance.


cearra on August 27, 2012, 11:40 a.m. Reply

I don’t like captcha. It is unpleasant for most users and also it is still non working if someone want really to break it.

Alea De

Alea De on September 19, 2012, 2:26 a.m. Reply

I remember five years ago I talked with you Byrne :) I decided that you are a norwegian and we had a great laugh. However, you helped me to make my blog run on MT.


Wilma on October 29, 2012, 8:19 p.m. Reply

Of course, IRC is no longer in use. Do you have other place similar to IRC when you have such group today?


Caroline83 on November 7, 2012, 1:57 a.m. Reply

I remember the Movable Type’s IRC chat room!! Seems so long ago now… I was really interested in the plugins back then and actually had several questions myself.. :))


Dixie on November 13, 2012, 2:01 a.m. Reply

I haven’t a question, but I have a suggestion. It is about to make a list or something like that and on the list to write few names of people who you know and know that they are good and reliable. Not everyone could easily install and run Moveable Type so he or she could ask for help paid or free from these people.

The needed man will have a look on the list and without worries, knowing that the man is reliable to ask for help and even to pay for it.


Kremena on November 22, 2012, 1:01 a.m. Reply

The plugin proposed by Fumiaki is good enough to use it. You only need to follow step by step his instructions and you would have a fully installed reCaptcha plugin. It works for every higher than MT4 version.

Byrne Reese

Byrne Reese was previously the Product Manager of Movable Type at Six Apart, where he had also held positions as the Manager of Platform Technology and Product Manager for TypePad. Byrne is a huge supporter of the Movable Type user and developer community. He dedicates much of his time to promoting and educating people about Movable Type as well as building the tools and plugins for Movable Type that are showcased on Majordojo. He contributes regularly to open source; and he is an advocate for open protocols and standards like Atom and OpenID.