Migrating to a New Blog Engine

Some time ago I made the switch to using WordPress as my primary blogging engine.  I hosted it myself and had mySQL and PHP for the infrastructure.

WordPress is a tried and true blogging engine so I was very impressed at its stability and performance.  One thing I didn’t like, which wasn’t really shortfall of the application, was my inability to customize and build my own themes.  The platform was PHP which made it very difficult for me since I really have no background in PHP.  I was “stuck” with off the shelf themes and the inability to customize the engine to my needs.

The other night I came across an open-source app called BlogEngine.net.  This is available for free from CodePlex and is developed by a community of dotnet junkies.  They leverage things like user controls, master pages, and other features of the .NET Framework.  Exactly what I was looking for.

The installation is straight-forward and doesn’t require anything special.  The primary storage for blog pages and posts is in an XML file.  You also have the option to use a SQL database.  In my migration I am just using the default XML option.  It works for what I use it for.

There are a lot of extra capabilities built into the product that I don’t use.  You can read more about those on their website.

I migrated my blog over to this new engine this last week.  The migration from WordPress was difficult since there are a not a lot of tools to do so.  The default tool does an export from either BlogML or RSS.  With RSS you can only export the post contents; this doesn’t get your comments for you.  BlogML is a implementation of RSS that extends the structure to include additional information like comments and categories.

Like I said, I didn’t have very good luck in exporting.  I basically was able to track down a WordPress to BlogML plugin for WordPress that replaces the existing RSS export capabilities.  The big problem I experienced was the export failed to pull all of my categories due to a database error and left all of my posts with no category association.  I spent most of the weekend fixing this.  That wasn’t much fun.

I also worked on porting the theme I was using in WordPress to the new engine.  That was simpler, but there are still a few quirky things with the new engine when it comes to building out a stylesheet for the theme.

BlogEngine.net has have support for the Metaweblog API so you can use most blogging tools like Windows Live Writer.