I’ve moved this blog away from Blogger to a self-hosted Wordpress installation. Wordpress has all the features I’ve been missing and is generally more modern and expandable blogging platform. But then you knew all that already. The question of why I was using Blogger to start with can be ignored for now.
Here’s a quick couple of notes about what I had to do in the hope that they might help someone one day. I’m assuming a fair degree of familiarity with both Blogger and Wordpress.
I used these instructions as my basis but they needed some tweaking to work with Blogger’s new templates. This method should enable you to migrate your content, redirect your RSS feeds (if you use Feedburner) and redirect your old site pages to your new one. The one thing it can’t do is transfer your Google PageRank as this requires the use of 301 redirects which you can’t do on Blogspot.
1) Obtain the latest version of Wordpress. Create a database and install as described in the Wordpress documentation
2) Log in to your Wordpress admin panel. Click Manage - Import - Blogger. Enter your Blogger login details. Wait for a bit and all your posts should be copied over from Blogger to your new site.
3) (Optional) Assuming that you are using Feedburner for your RSS feed: login to Feedburner and change the source of your feed to your new site eg www.yourdomain.com/feed . Install the FeedSmith plugin - this will automagically redirect requests for your RSS feed to your Feedburner feed instead.
4) This is the fun bit. You need to redirect traffic from your old Blogger blog to your new Wordpress blog.
4a) Download the from_blogger.php file from here and save it to the root of your Wordpress site.
4b) Paste the following code into your Blogger template (I put it just after the opening <body> tag)
<script language='javascript'><!-- var process_page="http://www.yournewwebsite.com/from_blogger.php"; var newpage=process_page; var oldlink=document.location.href; newpage+="?p="+oldlink; newpage=newpage.toLowerCase(); document.location.href=newpage; //--></script>
4c) Paste the following into your Blogger tempate’s <head>element
<meta http-equiv="refresh" content="5;url=http://www.yournewwebsite.com" />
4d) Paste the following somewhere into your Blogger template’s <body> element
<div style='position: absolute; top: 30px; left: 30px; border: solid 2px #333; color: #000; background-color: yellow; padding: 5px; width: 350px; z-index: 5;'> <p><strong>My blog has moved! Redirecting…</strong></p> <p>You should be automatically redirected. If not, visit <a href='http://www.yournewwebsite.com/'>http://www.yournewwebsite.com</a> and update your bookmarks.</p> </div>
In theory what should happen is that visitors to your old blog will be redirected to the same article on the new site. The way it works is by capturing the last part of your Blogger page’s url eg my-great-post.html and searching for a post with the slug ‘my-great-post’ in your Wordpress blog. Unfortunately Blogger and Wordpress don’t always agree on how to create that slug so you may need to go through each post individually and check that the slugs match up. To do this go to Manage - Posts and Edit each one. The slug is displayed on the right hand side of the edit page under ‘Post slug’.
I’ve tried to write this as quickly as possible while the process is still fresh in my mind but in rushing I’ve probably not explained myself very clearly. Post in the comments if you have problems and I’ll try to assist.