Skip to content

Subtext to WordPress on Windows Azure Web Sites migration

As you may have noticed by now I’ve changed my blog engine from subtext to wordpress. I’ve been using subtext as my blogging engine since I’ve started blogging and have been very happy with it. The reasons that led me into moving were firstly the fact that I wanted to move to a modern platform with better tooling and community support and secondly the fact that I wanted to use Windows Azure Web Sites for hosting it in order to get hosting abstraction, automatic fail over, and turn key scalability. I’ve tried my best to keep the permalinks to my posts intact so I would appreciate it if you let me know of any broken link found. So how I did it…

Exporting posts from Subtext

This is pretty easy since Subtext natively support BlogML. Logon to your blog admin, go to Options>Import/Export and click on the “Save” button in the “Export to BlogML” section. Un-check the “embed attachment” flag because WordPress will not be able to import the file due to size restrictions

Setting up WordPress in WAWS

You can find a pretty cool guide of that at kefalidis blog so I will skip this step.

Decoding BlogML

To import the content I’ve decided to use the BlogML import plugin. Unfortunately this tool does not support the base64 encoded content of the subtext posts, so I had to reconvert it to normal text. To do that, I downloaded the Base64 to Plain converter, compiled it and run it over my BlogML file and got my normal plain text BlogML export file.

Moving files to WAWS

Unfortunately none of the BlogML import plugins I’ve tried could handle attachments, so I had two options to move my images and files to WAWS. I could either use Web Matrix to download my WordPress blog locally, then import the files to the proper location and then search-replace my BlogML file for all my image references from the old path to the new one, Or I could skip the download part, upload all my old files to Windows Azure Storage and search-replace my BlogML file for all my image references from the old path to Windows Azure Blob storage urls. The second seemed easier so that’s what I chose.

Importing posts to WordPress

Finally I’ve changed the permalink structure to match the format of the post urls in Subtext. The format used by Subtext is: /archive/%year%/%monthnum%/%day%/%postname%.aspx and following the Tools>Import>BlogML menu I’ve imported my posts to WordPress.

The tool doesn’t import the name of your categories (you will have to rename them manually after the import) but it gives you a nice url rewriting table that you can use if you are changing url or permalink structure for your blog.

Next steps

Having tried it for a while and having no problems (so far) I’ve decided that it’s time to change my blog theme as well. So I’m currently in the search for WordPress themes. If you have any suggestions please drop me a line.

Published inMicrosoft Azure

Be First to Comment

Leave a Reply

Your email address will not be published. Required fields are marked *