After a lot of dilly-dallying, finally I made up my mind to move from blogger to wordpress. With the introduction of “Import” feature in wordpress, the process has become quite simple but there are some points to take care of. Here is a step by step process how I made a shift, hope it would be useful for you too. In my case I had to move from blogger custom domain to wordpress. ie from xyz.com on blogger to xyz.com on wordpress. [This tutorial will be useful even for those who are moving from blogspot domain to your own domain on wordpress]

[We assume that you have wordpress installed on the domain you want to move to]

Change your Name Servers to point to the new webhost.

Go to your DNS settings page and point name server to your new host.
image 
While registering, your webhost should have provided you with the name server info. If you are moving from custom domain name to wordpress with the same domain name, give ~ 24hrs of time for name server settings to propagate.   

Switch to blogspot.com

If you are moving from blogger custom domain (and same domain) to wordpress, read on. Otherwise skip this step.
You need to switch to blogspot.com otherwise you would not be able to complete next step.
image

Import all your blogger posts and comments with a click of a button.

Go to wordpress dashboard > Manage > Import. Click on blogger.
image

On the next page you need to key-in your blogger account details to let wordpress access your blogs. Click on Import button. Your blog posts and comments will now get imported to wordpress.

Redirection through .htaccess file.

This is one of the most important part. Proper redirection ensures that you don’t lose the old traffic and Google juice. We assume that permalinks custom structure that you would be using is /%postname%/ [btw this is one of the most SEO friendly structures] Create a .htaccess file on the new domain. 

  1. If you are NOT in the habit of fiddling blogger post slug after publishing: The world would be nicer to you.
    Here is what you can do to ensure proper redirection.
    RedirectMatch permanent ^/[0-9]{4}/[0-9]{2}/([a-z0-9A-Z_-]+) http://xyz.com/$1 
    $1 in the end takes anything that comes out of ([a-z0-9A-Z_-]+) and append to your new blog URL.
  2. If you are in the habit of fiddling post slug after publishing (like me): Get ready to do some techie stuff.
    If you tend to change the post slug in blogger after publishing, the above method would simply not work for you, as it didn’t work for me. Here is what I did that ensured 100% redirection. I used one to one mapping for the URL’s. I have tried to automate this process so that it would consume minimal time of yours.

    Download and install Notepad++
    Go to blogger dashboard. Posting > Edit Posts. View Source.
    Select All and copy paste everything in notepad++ window. 
    Find http://xyz\.blogspot\.com.*" and click find all. You will see the results in a window below. Copy paste from this window into a new one.
    Find (.*)(http://xyz\.blogspot\.com.*")(.*) replace with \2
    Find " and replace with blank [ie leave the replace field blank]
    Find .*#comments and replace with blank [ie leave the replace field blank]
    Find http://xyz\.blogspot\.com  and replace with RedirectMatch permanent ^
    Now Log into phpmyadmin of your new domain. Go to SQL tab and execute this query.

    SELECT post_name
    FROM wp_posts
    WHERE post_status = "publish"
    AND post_type = "post"

 
You will get all your posts slug. Copy paste them in notepad++ window and:
Find (.*) and replace with to http://www.xyz.com\1

Hereafter you need to manually place the URL in-front of the corresponding matching URL. I know this is kind of a boring stuff but this is closest to which I could reach and have tried to automate the process as much as I was able to.

Rest of the part should be no brainer.

Change the “Let Search Engines find your blog” under blogger settings to No.

Change the original feed address in feedburner to your new blog’s feed address.

Done. Enjoy!
While I moved from blogger to wordpress I took help from this post of blogbloke.com. I found there were some points that could be improved upon hence wrote a full post on it.

Want to get an update as soon as we publish new article? I recommend you to subscribe via RSS Feed. You can also subscribe by email and have new articles sent directly to your inbox. It's absolutely free!

I followed blogger’s instruction while setting up a custom domain name on blogger and was not able to set up my domain name. Luckily, while searching on the net, I hit a comment on one of the sites, followed the instruction there and it worked like charm. Here are the modified blogger instructions (in bold):

  1. Log in to your account at www.godaddy.com.
  2. Open the Domains tab and select My Domain Names. You’ll be directed to the Domain Manager page.
  3. Click the domain that you’d like to use with your blog.
  4. Click the Total DNS Control And MX Records link at the bottom of the section entitled Total DNS.
  5. Select the A Name entry and delete it using X button on the right.
  6. Come to CNAMES. By default Godaddy create a CNAME with host NAME as www pointing to @. Click the pencil icon on the right to edit it. Change the “Points To Host Name” to ghs.google.com. Leave other options as it is.
  7. Now, Click Add New CNAME Record in the box labelled CNAMES (aliases). For the NAME enter “domain.com“[Your domain name] and for “Points To Host Name” again enter ghs.google.com. Leave the default TTL option
  8. Click OK, and then click OK again.
  9. Relax and give a couple of hours for DNS entry to propagate.

Note: These instructions are for those who have domain(s) registered with GoDaddy, for other Domain Name Registrars follow blogger’s instruction here.

Also, the instructions above would not work if your domain is hosted somewhere else and you wish to host a sub-domain with blogger. I mean it wouldn’t work if your domain www.domain.com is hosted at XYZ host and you want to host blog.domain.com at blogger.

Well, for the uninitiated, with the help of custom domain, blogger gives you the facility to change to a domain name of your choice. For ex: If you have www.domain.blogspot.com you can change it to www.domain.com.  With some minimal settings blogger would automatically redirect all your traffic older domain to new one.