Home » Articles » Migrate from Radio Userland to MovableType

Migrate from Radio Userland to MovableType

Introduction

This article describes how to migrate (transfer your blog postings) from Radio Userland to MovableType. I'm not gonna dwell on why to do that. Personally, I wanted something that is not desktop-bound so that I can post from anywhere and I also wanted some things that were not present in Radio, namely ability to do extensive web site stats.

The problem

There are two problems: moving your template and moving your posts.

You don't have to worry about the first problem if you also decide to switch to some MT native template. I wanted to keep my Radio template. Converting was a bit painful but not that difficult (mainly it's about replacing Radio tags with relevant MT tags).

The second problem is transferring the posts. Fortunately MovableType has a feature to import/export posts if they are in a format supported by MovableType. Therefore the problem is reduced to exporting Radio posts to MovableType format. Radio can export posts in XML format, one file per post. In my case those posts were in c:\Program Files\Radio UserLand\backups\weblogArchive\posts directory. If those files are not present go over Radio's preference settings - I'm pretty sure there's an option somewhere to force Radio to generate those.

So I wrote radio2mt.py script to convert all posts to MovableType format. This script is based on Aaron's script. It's not perfect and has some code dealing specifically with my posts, so you might need to tweak a few options to get everything right.

The main redeeming quality of this script is that it tries to preserve the links within the weblog (i.e. in those cases where you link to your own posts).

The conversion procedure is very simple:

You can also setup redirects from the old site using a bit of JavaScript:
<script LANGUAGE="JavaScript">
<!--
 function redirect()
 { 
  window.location = "http://blog.myself.org/"
 }
 
 setTimeout("redirect();", 5000)
//-->
</SCRIPT>
A tip: if you're importing to a new MT blog (without any posts) and screw something up, you can delete all posts using mysql by doing delete from mt_entry;. I had to do it a few times while tweaking the converter code.