Moving your WordPress blog can be very frustrating and can bring you a real headache. You have put a lot of effort in creating your website content and you want to take it with you to a new home. Of course you want to keep all backlinks and link structure untouched. But be warned that any mistake can bring you very serious trouble as you may loose your traffic and/or search engine positions. If you have decided for such move you need do it well. In this post I will do all my best to help you with your move.
Before making any changes you should know that you can move all your traffic instantly. Unfortunately you can’t do it with your search engine rankings and backlinks. But don’t be afraid! You won’t loose any search engines traffic. You will temporary (for about 2-3 moths) loose your pagerank and backlinks visibility.
If you have not changed your mind here is step by step guide for making a safe move. I have not described in details what should be typed/clicked as you should have some basic technical knowledge to complete this guide. If you have no idea what am I talking about in next steps it would be better for you to find some professional that would help you (for example you can hire me). So let’s start.
1.) Make sure your new domain is up and ready
Before you will start making any changes to your blog (preparing it for move), make sure your new domain/host is ready. It would let you to avoid unneeded downtime.
2.) Create empty database on your new host
If you are not too familiar with MySQL database management you may use a tool like PhpMyAdmin. Installation and usage of this tool is deeply described right here. You will need it again for database export/import in next steps.
3.) Copy all files from your current WordPress installation
Now you will need to make a copy of your files. You may download it to your local computer via ftp and then upload to new host or compress it to tar archive and download it via www to your new destination.
4.) Double check your MySQL database configuration
Verify database name, user name and password of your newly created database. If it is not same as on old host you will need to edit WordPress MySQL details.
5.) Prepare for your database move
Before exporting your database, you need to change some configuration values that are stored in it. Log in to you WordPress Admin and go to “Settings/General” and change your “WordPress address (URL)” and “Blog address (URL)” to point to your new domain name.
6.) Export / Modify / Import
Now you need to export your database to plain text .SQL file. You may use PhpMyAdmin that I have mentioned before. But before importing it new host database you need to make some modifications.
Use any Find & Replace text tool as there would be hundreds of values to change (I can recommend you free EditPad Classic). Find all occurrences of your old domain name and change it to new. For example I have been moving from “http://blog.kreci.net” to “http://www.kreci.net”. So I have searched for all “blog.kreci.net” and replaced it with “www.kreci.net”. When done just save a file. Congratulations! You have just reconfigured WordPress, all links in your posts and all plugins. Now import new file to new database.
7.) Verify your new WordPress domain configuration
Visit your new domain webpage. You should see a fully working copy of your blog. Verify if all pages are loading and none of links or images is broken. Check your admin panel as well. If everything is fine it’s time to move your traffic.
8.) Redirect traffic to your new domain
Ideal way to move your traffic are a 301 redirections. All you need to do is to prepare a new .htaccess file and put it on your old domain main directory. You should backup your current .htaccess and change it’s content to something similar to this:
Options +FollowSymLinks RewriteEngine on RewriteRule (.*) http://www.kreci.net/$1 [R=301,L]
You should replace “http://www.kreci.net” with your new domain address. This redirection will move all your old domain traffic with all subdirectories to same directory structure on new domain. So when someone type “http://blog.kreci.net/foo/bar” it would redirect to “http://www.kreci.net/foo/bar”.
Congratulations! You are done! 301 redirects inform your visitors web browsers and search engines that your website is “Permanently Moved”. Visitors should be redirected without even noticing it. Search engine will send traffic as it did before but with a next crawl of you website it should update all indexed urls. To make it faster it is still a good practice to update as many backlinks as possible.
Just in case...
If all of those steps seems to scary for you - don't give up! You may hire a freelancer that will do the job for you for about $30. Just visit "Freelancer" portal and write a simple job (first job posting is free!). You may point this blog post as a reference for what you want to be done. Good luck!