Lots of business owners and bloggers find themselves in the need to move their WordPress websites to a new domain that they own. That’s good news if they have a clear rebranding strategy to take their businesses to the next level. But when things come to SEO and ranking, people can be confused about the migration process, especially with complicated tools and settings.
Forget all the advanced options that complicate life, I’m going to show you how easy is it to move your blog and make it better.
What do you need to move WordPress?
This is an easy migration process that can be done in a few minutes if you have a fast Internet connection. What you need are:
- FTP client software like CyberDuck or FileZilla
- The free WordPress database Migrator plugin
- The free Database finds and replaces plugin
- The PHPMyAdmin panel
- WordPress content directory and the database
Steps to migrate a WordPress site
I’ll make things easy, simple, and fast to understand, at the same time; just follow my step by step tutorial and you will save timing money with migration services.
1. Verify both domains with DNS on Google
This is a step that wasted hours of time in many cases, People forget that their old domain name will be redirected to their new website, and that’s why the meta tag or the file upload verification method will never work. The Google webmaster tool lets you choose the domain name option that will stay even if there is a redirection.
So, make sure to verify both domains using the domain name registrar method.
When you add and verify your website with Google and also with Bing, things will be ready to start the migration.
2. Download the databases and update their tables
This is the most important step, you need to install the WP Migrate DB plugin, then, after activating it, you will find its link options under “Options”.
Next, you will get the plugin interface, everything is configured by default and I recommend keeping everything the same except the second table option that you can delete if you want to delete. Add the old domain name, and the new one, and finally, click on “Migrate” as the following screenshot.
Now, you will get a pop-up window with the migration progress. The plugins will start finding the old domain name and will replace it with the new domain. Then, it will export the database as normal, but this time with everything on it as done and ready to use for the new domain.
When everything is done, you will see “exporting complete”. Then, you will get the download option, accept the file download, and you will see the database file in your download file or other, in the “SQL” format.
Until now, you have done the most important thing, which is the database to find and replace.
3. Download the WordPress content folder
Forget the outdated and the complicated migration tutorials, you don’t need any other folders than the “wp-content” directory, it includes your “themes” and “plugins” folders. So, access your old website using the File Manager if you have a cPanel, or, use an FTP if you have a VPS and other hosting methods.
4. Install a new WordPress install
Create a fresh install for your new WordPress domain. Of course, you need to point the new domain’s name servers or the IP address to the right hosting. Make sure that everything is working and you don’t have a problem with DNS or others.
If you’re using a professional VPS, the majority of hosting providers require adding an A record with your server’s IP address. I recommend using your original domain name DNS tool instead of any others that can add extra time to your website’s DNS lookup time.
5. Upload the database
The WordPress database stores all your website options, posts, pages, and everything else. Luckily, you have a fresh install and you don’t have to do complicated things like updating the database name and username and so on. What you need is the PhpMyAdmin that lets you access the database tables and modify them.
So, log in to PhpMyAdmin, and then, click the database name from the top left corner of the page.
When you click the database name, you will get all its tables in the right area. You only need to click on the “import” options from the top menu, exactly like this screenshot example.
Then, choose the file of the downloaded database, and click the “Go” button at the bottom of the page to start uploading the file.
The upload time depends on your database size, some hosting providers limit the size per file, but you can divide the upload into multiple parts. Anyway, when the upload is complete, you will see a green message telling you about the successful import of a number of tables that the database has.
6. Upload the content directory
If you have the cPanel control panel, things will be easier and it will be fast. However, if you can only have an FTP method, then I recommend using the Cyberduck FTP software, it can be installed on both Mac, and Windows machines.
It works faster and better than FileZilla, the best thing is that you can upload compressed files and that’ll speed up the upload process and saves time.
If you want to upload the file in ZIP format that I recommend, in the above post, you will find how to extract that folder in WordPress using a simple and free plugin.
Unlike the database, the wp-content folder doesn’t need a “find and replace” task, it’s just a directory that you can move between domains and the only thing that links to that folder is the database URL for the attachments that you’ve updated with the new domain in step 1 above.
7. Test the new domain
Please make sure to test a few posts, and also pages to see if there is a problem with your files. If you’ve followed the above steps, you should get a fully functional website with the same content, but with a new domain name. Update your contact page, the “about page” and the others.
8. Properly redirect the old domain name to the new one
This is a critical step, if you do it wrong, you can lose all the old site SEO. So, make sure to use the exact domains and copy and paste them to avoid mistakes. If you’re hosting on shared hosting with Apache servers, you should have an htaccess file.
What you need is just to copy and paste the following code into your hatches file, and of course change “newdomain” with your new domain name, and save the changes.
#Options +FollowSymLinks RewriteEngine on RewriteRule ^(.*)$ http://www.newdomain.com/$1 [R=301,L]
You can select the file, and then, select the option “edit” from the top menu in the file manager. It’s recommended to paste the code at the top of the file.
If you’re hosting with an NGINX environment that doesn’t have the hatches file, I highly recommend letting your hosting technical support set up the 301 redirect correctly. They know more about these things and you will avoid mistakes that lots of people make. NGINX servers don’t need the hatches because they have all the needed configuration internally.
Of course, you can find lots of codes to set the domain redirect in the NGINX server, but I recommend letting the company do the job for you. Just send a support ticket or contact them by phone and provide the exact new domain to set the redirect.
You should only ask for a 301 redirect, and tell them that you want to move website content to a new domain. They will do the job, and you will save your site from mistakes and errors.
9. Update the domain in Google and Bing tools
When all the above steps are done correctly, every post and page from the old domain name will redirect to the new one with 301 redirects. That tells search engines that the content was moved permanently to a new domain. Google has a great tool that lets you change the site URL easily and move the SEO value to the new website easily.
To do that, log in to your Google Webmaster Tools, select your old domain and click the settings icon, then choose “Change of address” as the next screenshot.
Then, you need to pick the new site from your verified websites, and the tool will verify the 301 redirects and also, the ownership of your websites before requesting the change. Just follow those easy buttons to click one by one.
When your request is submitted, you won’t lose traffic as many people say. Google will still send visits from the old website’s indexed pages, and they will be replaced with the new ones in the next days.
You need also to try updating some of your backlinks to be pointed to the new domain. That can be done by contacting website owners who linked to your old site and ask them to update the link. Of course, not all of them will respond, but you will get a good result.
That’s how to move your WordPress site or blog to a new domain and even hosting, but without losing SEO and SERP ranking. It’s just about following the above steps carefully.