Bye bye Blogger – Hello WordPress!

This content is 17 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

Regular visitors to this site may have noticed that over the last 24 hours, the site has developed a totally different look and feel.

I will start posting content that isn’t about the redevelopment of this site again soon but the last couple of weeks have been pretty tough on the self-hosted IT front. First I started to have problems with e-mail delivery to certain hosts, then I accidentally dropped my domain off the Internet and at the same time, I’ve been busy moving this website to a new content management system and hosting provider.

For some time now, I’ve been working on rewriting the site using (semantically correct) XHTML and CSS but my lack of design skills (combined with a lack of spare time) were holding the project back. Ironically, it was my decision to dump Blogger as a content management system (a not insubstantial project in its own right) that has pulled everything together.

WordPress logoI’ve heard a lot of good things about WordPress, which is available as a hosted service or as software to run on a server under your own control, and I’ve chosen the latter option. In fact, over the last couple of weeks, the whole site has been migrated to a WordPress installation on ascomi‘s webspace.

It’s quite strange – most of the technology on which I’ve built my career is from Microsoft – yet I’m writing this post on a Mac and publishing it on a site which uses the Linux-Apache-MySQL-PHP (LAMP) software stack (actually, the server is running FreeBSD, so it’s really FAMP but that’s just being pedantic).

I had originally planned to run the old and new sites in parallel until all the issues were ironed out, but in practice it’s not been that straightforward as I tried to maintain the URL structure. Late last night I cut everything across to the new site but like so much on the ‘net today, Mark’s (we)Blog 2.0 is in beta!

So, why’s it been so complex? Well, so far, this is what I’ve done:

  1. Order new hosting space and upload the content from old website.
  2. Transfer/register all domain names and direct them to the new hosting provider’s name servers.
  3. Edit .htaccess to rewrite requests from secondary domain names (or without the www. prefix) to
  4. Install and configure WordPress – pretty straightforward with a Fantastico scripted installation.
  5. Customise WordPress – pick a template (Andreas Viklund’s WP-Andreas01), install and activate plug-ins (WP Suicide, New Blogger Import).
  6. Commit WordPress Suicide, in the process wiping out default posts etc. but leaving behind users, user metadata and options.
  7. Migrate Blogger content to WordPress, maintaining the existing URL structure – this was the bit that scared me most and actually it was really simple (hosted WordPress users can also directly import from Blogger). First of all I needed to switch Blogger over to host my blog at Google (BlogSpot) – as all the previously-published content was still available on my server then users would not have seen any change. Next, I used the New Blogger Import plugin to suck over 700 posts and 600 comments out of BlogSpot and into WordPress. I had an issue with the formatting of the URLs but Ady Romantika very kindly updated his script for me and the updated version ran very smoothly (a couple of posts were missed but I found them from an XML sitemap generator broken links report and migrated them manually). It’s worth noting that Ady’s script also leaves the Blogger post ID as a comment in each migrated post. Once migrated, I switched Blogger back to FTP publishing and ran the old and new sites in parallel for a short time but found that to be too much work and have since removed the Blogger site from the server (an archived version of the old site will remain in place for a few weeks at least).
  8. Install and activate the Category Tagging plugin. Start to assign categories to posts and create a new post, which removed the PHP error messages that originally appeared (Warning: array_keys(): The first argument should be an array in /usr/home/username/public_html/blog/wp-content/plugins/category-tagging.php on line 95 and Warning: Invalid argument supplied for foreach() in /usr/home/username/public_html/blog/wp-content/plugins/category-tagging.php on line 96).
  9. Make more template formatting changes; deactivate WP Suicide and New Blogger Import; install and activate Fancy Archives and AdSense Deluxe; register for a WordPress API key and activate Akismet.
  10. Create new pages to replace the non-blog content from the old site (and redirect requests using .htaccess).
  11. Remove the old content and generate a new XML sitemap.

Looking back, it’s odd that one of the things holding back the redevelopment of the original site was the lack of a good design – as it happens the WordPress template that I chose is also available as a standard website template and there are loads of good-looking templates at and at Open Source Web Design.

At the moment I’m still adding categories and tweaking the formatting (there are some CSS glitches to iron out – hence the beta tag) but I’m hoping that within a few weeks the site will be pretty much there. I also plan to go back through the template code and implement some of the CSS tips that I’ve been picking up from the old .net magazines that Alex gave me as well as two excellent books:

If all goes to plan, subscribers shouldn’t have to change any settings, the URLs for the content should be preserved, the quality of the content should improve and my search engine placement should be maintained.

10 thoughts on “Bye bye Blogger – Hello WordPress!

  1. First of all congrats on the move to WordPress. I switched from dasBlog to WP a couple of months ago and the move has really improved the quality of my blogging. From the high configurability to the shear volume ot plugins and themes available, WordPress has been a great move for me. I’m actually using it to knock together custom websites really quickly too; with the added boon of being able to offer CMS facilities to users.

    Just wanted to confirm that the transition was seamless for me. RSS feed seems intact and if I hadn’t read this post I porbably wouldn’t even have noticed the change.

    Good luck with the new software! Enjoy it!

  2. Hi Owen,
    Nice to hear from you and thanks for letting me know that the RSS feed is intact!

    I hope life is good on the Isle of Man – U.G.H. is looking good on WordPress – I’m particularly enjoying the Manx landscapes!


  3. Interesting post! I get a lot of questions from blogger users who wish to move over to hosted WordPress, and from now on I’ll send them to this post to give them an idea of how it works – and how good the result can be. Good choice of theme too, let me know if you experience any problems with the design!

  4. Andreas,
    I’m honoured to have you drop by and see your work in action and glad you like the result :-) – thanks for making your template available in the first place.

    All the best, Mark

  5. Azrin,
    The plugin that I used is for “new” Blogger. The trouble is that “new” Blogger is a constantly moving feast as they may be out of beta but still seem to be making changes. I see that you commented on the plugin page too – if you look at the other comments there you will see that that they have restricted the RSS feed to a maximum of 500 posts. That effectively stops the import from importing any more than that :-(

    (glad I jumped ship before they did that!).

    I guess you could import, then delete some posts from Blogger and import the rest but I haven’t tried it and it’s a risky scenario as it effectively destroys any chance of rollback should the migration go wrong.


  6. I’ve just been looking at the announcement for the release of WordPress 2.2. One of the new features is:

    “A new Blogger importer that is able to handle the latest version of Google’s Blogger product and seamlessly import posts and comments without any user interaction beyond entering your login.”

    Sounds like that should make the migration process a whole lot smoother!


Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.