Moving from movable type to WordPress

The Codex MT import Guide now contains detailed directions, with links.

Mena says It’s about time, and I can’t agree more. It’s about time Movable Type users moved to WordPress.

A lot of MT users might want to move to WordPress, but may have a lot of questions and doubts regarding the move, and about WordPress. I thought a short post with essential resources, tips and answers will come in handy to at least a few people, so here goes.

Downloading and Installing WordPress:
WordPress 1.2 “Mingus” is now ready, get it from The sourceforge download page.

Importing MT entries:
You can import all your MT entries into WordPress using the import-mt.php script that ships with WordPress, which can be found in the wp-admin folder.

  1. MT exports the entries with the dates set wrong. The dates do not carry AM/PM or 24 hour information. There is a Fix for the date problem at the MT support forums.
  2. WordPress uses UTF-8 as the default encoding. So if your MT blog uses ISO 8859-1 or Latin – 1 to encode posts, convert the posts to UTF-8 before importing, to ensure that all characters display properly. Optionally you could also set an Option (Option -> Reading -> Character Encoding) in WordPress to set the Charset for the WP weblog to ISO 8859-1.
  3. The import-mt.php that ships with 1.2 had a couple of bugs, which I fixed. The new import-mt.php is available for use. Read the post at scriptygoddess. Use this to ensure the backslashes in your posts are treated properly, and the “——–” strings in your posts do not break anything.

The MT import tutorial is there if you need help, and be sure to read the notes at the end to see how you can refer visitors to your new WP powered blog from the old MT urls, and other such bits and pieces. :)
Edit: If you are having trouble importing all the entries at once, getting timed out on the import etc, this thread has some pointers regarding how to work around it.

Modifying your template, stylesheets:
1. LaughingLizard’s Well commented index.php should be helpful in understanding the wordpress index.php file/template.
2. The template tags are explained at the template tags wiki page, and Gregory Auld has written a nice article comparing the MT and WP “template tags”, which should also be of help.
3. NuclearMoose’s Annotated default CSS and podz’ Graphical CSS are excellent guides to the default css stylesheet that ships with WordPress.

Growing wings:
A few very useful wordpress links:
1. The WordPress Wiki – I find myself here at the beginning of a search for a hack/plugin/technique all the time.
2. The Support Forums – search and you shall find :)
3. WP styles competition – for awesome ready-to-use stylesheets (…and how to use them).
4. – The blog with loads of tips and useful links.

A few answers:
Multiple blogs using WordPress:
From the trackbacks to Mena’s post above, it seems like a lot of people think it impossible to use WordPress to run multiple weblogs. It is possible to use wordpress to run multiple weblogs off of the same server, with just one MySQL database. I have 7 WP weblogs running on one server! All it takes is to install wordpress multiple times. Each blog would have a different MySQL table prefix. Installing a wordpress blog takes less than five minutes (I agree it could take longer to get the template and stylesheet modified), and so, it’s not only possible, but really easy to have more than one blog powered by wordpress on your server.

Rebuilds and pages:
WordPress does not have to rebuild any pages each time you update your blog. It uses PHP to dynamically create pages on the fly, and is real quick, too. (You can see how much time it took to create and display this page at the bottom of this page)
This also means that all you need to have is one template – index.php. The individual entry “pages”, the archives and everything else is created by WordPress depending on the parameters passed to the index.php file.

Keeping your MovableType links:Last Edited July 10th, 2004
You can redirect visitors to pages on your old Movable Type blog to the correct ones on your new WordPress blog using some readily available solutions. If you are only concerned about search engines, most of them will catch up with the changes in the URLs within a certain amount of time. The following solutions work for both kinds of urls, ones that use the ‘post_id’, like so —, and the ones that are ‘dirified’, like so — . For some solutions for the former type, you may need to keep your MT installation around until the search engines are updated to reflect the changes in your blog. This is because of the fact that the MT export file does not provide the ‘post_id’ s for the posts. For dirified urls, there should be no problem.
Update: If your MT permalinks had the post ids in them, then with a little code-fu, you can get wordpress to use the same post ids as MT, and the detailed directions, complete with required changes is available at Dr. Bacchus’ Journal.

  1. Alex King’s MovableType template to redirect visitors
  2. Matt’s Solution.
  3.’s solution

Licensing and other issues:
WordPress is distributed under the GPL, and will remain Free Software. Period.

Please leave a comment if you have any questions, or if you find a resource not listed here very useful in making the transition.

This entry was posted in Uncategorized and tagged , . Bookmark the permalink.

96 Responses to Moving from movable type to WordPress

  1. Pingback: Steven's Weblog » Slashdotted!

  2. Pingback: » Must-Have Link

  3. Pingback: Deluxive Brigade | Innerstads trash » Byter till WordPress

  4. Pingback: Mind of Mog » Switchers

  5. Pingback: Living Torah Journal » WordPress, why and how

  6. Dale Lature says:

    I have tried doing trackbacks to a couple different WordPress blogs, and they don’t seem to work…..I’ve tried using the “trackback URI” given in the comments section under an entry, and I ‘ve trie4d using the http://myblogurl/wp/index.php?p=5 type URL . I see no sign of any trackbacks being recorded or referenced on the site whose entry I referenced. How does one get a trackback recorded on WordPress, and does it work from other blogs such as MT and/ort dotText (a dotnet version…tried it from both)


    PS also, how does one do the multiple blog thing……what are the steps to get there (aside from step 2, from what I gather, is the re-installing of WordPress again…but at what step does the table prefix get set? I understood that prefixing the tables differently allows for the multiple blogs.

  7. Pingback: ultramookie » WordPress Info

  8. Pingback: Geek Girl 4 God Weblog » Movin’ On Up (w/ Word Press)

  9. ayman says:

    Thanks for the great instructions here.

    Re: Keeping your MovableType links. I had some problems doing the 301 redirects. I wrote some php to get the MT Entry Title and search for it in the imported WordPress blog.


  10. Carthik says:

    This seems to be a simple, yet effective solution. Thanks for sharing it here :)

  11. Dale says:

    Yes apparently so, either through comment moderation/apporval by site administration or with a plugin/hack that allows one to setup a blacklist see WP Blacklist Comment SPAM Filteration for more information.

  12. simon says:

    Thank $DEITY for folks with some sense and more knowledge than I :).

    google search that brought me here, and several other sites. (hits: 672)

  13. Pingback: Tecendo Idéias Weblog

  14. Date says:

    Thanks for the great instructions! Pop up for comments is very essential, cause this awfull spam is repelling.

  15. nyler says:

    Loved the detailed instructions. It helped me a lot. :)

  16. Ruby says:

    Thanks so much for the good advice. The link in #3 of importing doesn’t seem to work. Anyplace else I can find that updated import tool?

    BTW, what is up with the huge frame taking up 60% of my screen in Camino? Making it very hard to read your good words…

  17. Ruby says:

    Nevermind, I just downloaded it directly from ScriptyGoddess. Thanks!

  18. Carthik says:

    Thanks for the heads-up. I have fixed the link to point at her post, instead of the zip file, since she seems to have disabled hotlinking.

  19. Pingback: » Importing large MovableType text files.

  20. ita says:

    Somethings do not work:I have exported all the post from movable type.
    In the main index: appears a wrong layout
    The rest of the site is ok (example:

    Thanks, ita

  21. Pingback: The Acorn » WordPressed

  22. deko says:

    In terms of first-time installation, WP is much, much easier to install than MT (yet still poorly documented). Here’s something that might help first-timers (like I recently was):

    I’m wondering what features MT has that WP doesn’t, or in what ways MT is better. In terms of sheer megabytes and files, MT has about 500 files (5.3Mg) while WP has about 150 files (1.4Mg). Either MT is bloatware, or it has some things WP does not.

  23. Yusuf Smith says:

    I just installed MT myself after using Blosxom before. I did look into using WordPress, and it’s capital-F Free, which MT isn’t, but MT lets you use the Berkeley DB whereas WP requires MySQL. Which would have cost me an extra 50 quid on my host.

  24. Pingback: Woordenaar | over leven » Dag MT, hallo WordPress (2)

  25. SEO News says:

    I switched to wordpress months ago and have found it beats MT hands down. To Yusuf, I’ve heard rumors of a Berkeley DB build in the works but I don’t have any info yet.

  26. Thanks for the heads-up. I have fixed the link to point at her post, instead of the zip file, since she seems to have disabled hotlinking.

  27. Juan Pablo says:

    wordpress sucks, now I use movable… it’s the best blogging system

  28. Pingback: babaluga » Moved to WordPress

  29. Alex says:

    MT users might be interested in the MT to WP redirector script as well.

  30. Carthik says:

    Alex, your redirect hack is linked-to from the import-mt manual, and so I already mentioned it above.

  31. KO says:

    Is there a way to manage authors in WordPress? As in MT, where you can say Author A can do x,y and z while Author C can only do x.

  32. Carthik says:

    you have user levels in WP and you can set the userlevel of a user, and also assign privileges based on userlevels, so the answer is yes.

  33. KO says:

    thanks for the prompt reply. I must have ovelooked that fact that for each user level permissions can be set. However, is there some sort of hack/plugin which allows you to put a number in the user level instead of pressing plus and minus umpteen times?

  34. Hmmm. I don’t really like the idea of dynamically-building pages. Blogs are simple enough that I’d rather just dump them to static html and allow apache to handily serve them. Start building pages dynamically, then there are cpu concerns, etc.

    Can one guarantee that the urls of the existing blog articles you wrote in MovableType will be preserved under wordpress? ie: remains the url for that specific article after I migrate?

    Are there external APIs you can use for publishing ? Any offline editors?


  35. Vitaliy says:

    <3 WordPress <3


  36. Ed says:

    Does WordPress address the comment spam issue? That’s the biggest reason I was thinking of moving from MT2 to MT3.

  37. Skillzy says:

    Regarding the “multiple blogs” question, apparently what people are looking for is centralized management of multiple blogs and users in one place, not just the ability to have multiple weblogs in one place –

    “what I believe they mean by WP “not supporting multiple blogs” is that your blogs have to be separate WP installations, with separate user bases, and you can’t administer them from the same control panel (like you can in MT and EE)”

    Anything in the works on that? Great resource page, by the way!

  38. mrG says:

    😳 the link on the first ‘wordpress’ is mistyped.

    The drupal solution to comment spam is likely importable to WP (since it’s GPL, we’re free to do what we like) — in Drupal, they use XMLRPC to check your credentials from any other drupal site: if you login as, the authentication will request your password from (provided it’s not banned) and let you in as a first-level member. That way, if you forbid anon comments, you get an id trace on any abuse.

    Of course, the hole in MT wasn’t so much anon comments as the way it was implemented at as CGI that did no verification of the referrer — organized crime quickly learned how to post directly to any blog ID by simply posting directly to a known mt-comment.cgi

  39. Pingback: EDaPina DTUP » MT a WordPress

  40. Lily says:

    hey nice work…:)

  41. Carthik says:

    No, there is not, it was not a problem for me! You can always go and edit the users table in the mysql database using phpMyadmin or similar, though, its really simple.

  42. Carthik says:

    The devs are working on true multiple blog support, and when it does happen, it is said that you can easily integrate all the tables from different blogs together easily.

  43. Carthik says:

    Michael – WordPress has some nifty comment-spam reduction methods. Check them out.
    You can use some offline editors. I personally don’t use one, but a quick search of the support forums should let you know which ones are useful. Besides you can blog by email.
    The importmt tutorial addresses three different ways you can maintain your current links, and forward/alias them to your wordpress equivalent.

  44. Carthik says:

    Yes it does address the spam issue, you have a blacklist, a list of spam-words that acts as a filter, and email-based moderation. You can also limit the number of links that mark a comment as possible spam.

  45. Michael Slater: sadly, no, you won’t be able to keep MT permalinks that use post IDs.
    The fault is on MT’s export file, that does not export IDs. Since the current MT importer uses MT’s exports, the post IDs would be lost. Someone may work on an importer that converts data right from MT’s MySQL tables in the future, though, and then we would ship it with WordPress.

  46. Carthik says:

    Michel, Michael, I edited the post to also explain in some detail how the redirects work, and how to keep the links alive.
    It is possible to keep posts with post IDs alive, but the MT installation’s help might be required.

  47. Pingback: Weblog Tools Collection » Disgruntled Movable Type User?

  48. Pingback: Mindful Musings :: Disgruntled Movable Type User?

  49. Pingback: DebWire » WordPress Is A Worthy Alternative

  50. Kathy K says:

    It’s easy to hack MT’s export to include the post ID. What I want to know is how to import it once I get it exported. How would I have to change mt-import.php to get it to use that? Would I have to add it into the ‘case’ section and what else would I have to do? I’m no php expert — yet. ❓