When you first decide to start a WordPress site, there are a few things you must do. You need to set up a hosting account, buy a domain name, install WordPress, and set up your site. A year after all of this has been done and your site has been doing well, you receive an email reminding you of renewing your hosting account. Then you realize the renewal cost is much higher than signing up afresh for a new account. So you decide to move away, the problem is, you’ll have to take your WordPress site with you. You’ll have to move your WordPress site to new a host. WordPress migration is not always as easy as it sounds. Moving a WordPress site to new a host can be a strenuous process, especially if you’re new to the ecosystem.
WordPress is so easy to use that even a beginner can set up a WordPress site easily with a small number of plugins. Managing a site includes routine tasks such as adding content, and customizing and performing backups. However, managing a website is very different in terms of the know-how required to move a WordPress site. What makes WordPress migration such a complex task, is the fact that a number of things can go wrong during the process. The very first step in WordPress migration is to make a complete backup of your site before anything else. Also, WordPress migration requires constant monitoring to detect and resolve any issues.
WordPress migration to new a host
There are a few factors which could help determine what your WordPress migration experience is like. These include knowledge required, the effort required, the time taken, efficiency (or accuracy). Based on these factors, you can choose to migrate your WordPress site to a new host in two ways:
Every process has its pros and cons, but the tradeoff depends on how important the above factors are to you. Lets now have a look at both techniques.
Migrate WordPress site to a new host manually
To manually migrate your WordPress site, you need to perform the following steps (explained in the WordPress codex):
1. Backup your entire site:
You can do this manually, or via a WordPress backup plugin like BlogVault. WordPress sites consist of 2 main parts: files, and a database. Both these parts are equally important and must be backed up before you make any changes to (or move) your WordPress site. To backup the site, you need to copy the files via FTP, and the database, imported via phpMyAdmin.
2. Backup the database
After your files are safely placed on your local computer, you must export the WordPress database. You will need access to cPanels as well.
- Log in to your cPanel
- Navigate to Databases section
- Open phpMyAdmin
- Choose the Export tab
- Select a method
- Pick a format
- Click Go button to save the database on your computer
3. Create a new database on the new host.
To move your site to a new domain, you’ll need to create a new database on the hosting service you’re moving to. This also means creating a new MySQL user with a secure password. Open cPanel on new host
- Navigate to MySQL Database
- Create a new database
- Create a new MySQL user
- Add new user account to the newly created database with all privileges selected
- Copy database name, username, and password
Note: Once this has been done, keep the database name, new MySQL username and its password safe.
4. Edit the wp-config.php file to reflect the new database changes
You’ll need to change the database name, the database username, and the database user password.
- Open the WordPress folder you backed up previously
- Make a copy of wp-config.php file just in case you do something wrong
- Open the wp-config.php file and find the following code:
/*The MySQL database username */
/*The MySQL database password */
- Change the database name, username, and password to newly created ones
- Save changes
5. Perform another backup
Make sure that this backup doesn’t overwrite the previous backup. This backup should contain all the new changes made to the database. Follow the same steps as mentioned in Step 1.
6. Import the Backup on new domain
After this, you’ll have to move the files and database to the new domain via FTP and phpMyAdmin, respectively. Follow the below steps:
- Login to your FTP account
- Find WordPress or public_html folder
- Upload the entire WordPress folder from your computer
7. Link your site to the new domain
If you’ve got external links on your site, they might break when you move them to a new domain. This is why it’s important that you update the links to point to the new domain. You can do this either manually, or via a plugin like Better Search and Replace or Search and Replace.
8. Update (or repoint) your DNS
You’ll have to update your DNS settings so they point to the new server instead of the old one. You can get the details required from your domain registrar. This link should help with the details for Bluehost
Pros and Cons of a manual WordPress migration
- Good if you’re acquainted with WordPress
- Gives you control
- Takes time
- Needs manual work
- Can be intimidating for a first-timer
- You need to be very careful at every step of the process
This is also why alternatives exist. There are migration services provided by web hosts and WordPress migration plugins. Let’s see how using a dedicated WordPress migration plugin to move your WordPress site to a new host could make life easier. This is one of the biggest advantages of using WordPress, there is a plugin for almost everything.
WordPress migration with Migrate Guru
Migration plugins are tools that significantly simplify the manual WordPress migration process. There are quite a few WordPress migration plugins available in the repository. While their processes vary slightly, they all work on the basic principle of performing a backup, moving it to the new location, and automatically offering a Find and Replace so that URLs can be rewritten. For the sake of illustration, we’re going to take you through the process of migrating your WordPress site with Migrate Guru, a WordPress migration plugin that is great for moving large WordPress sites.
- Needs minimal manual work
- Takes less time
The Prerequisites for using Migrate Guru
Moving your WordPress site to a new host with Migrate Guru comes with a few simple prerequisites:
- A new hosting account with a domain that has WordPress installed & knowledge of the directory in which you installed WordPress (You would have selected this when you set up a domain on your new hosting account)
- The Migrate Guru WordPress plugin installed on the site you want to move. Once Migrate Guru is installed on the source site.
- Install and activate the Migrate Guru plugin on the site you want to move.
You can do this by logging in to the site you want to move (the source site), navigating to ‘Plugins’ and clicking on ‘Add new’. Type in ‘Migrate Guru’ in the search bar, and click on ‘Install Now’.
Once installed, activate the plugin.
Using Migrate Guru
1. Choose the host you want to migrate to, via Migrate Guru
- If your destination host is on Migrate Guru’s list of hosts, choose one of them.
- If you can’t see your host in the list, you can choose to move your site via FTP or cPanel, depending on which option you have the credentials for.Selecting FTP instead of a host, this is what you should see:
You’ll be asked for the following details:
- Email address: The email address to which you’ll be receiving emails detailing the progress of your migration
- Destination site URL: the URL of the domain you’re moving your site to
- FTP type: Make sure you know which protocol your host uses – FTP, SFTP, or FTPS. If you enter the wrong protocol, Migrate Guru will prompt you to change it.
- Host/Server Address: This should be on your hosting account’s cPanel.
- FTP Username and Password
If you select cPanel instead of a host, these are the details you will be asked for:
- Email address: The email address to which you’ll be receiving emails detailing the progress of your migration)
- Destination site URL: The URL of the domain you’re moving your site to
- cPanel Username and password
If your site is HTTP Authenticated, click on ‘Advanced options’ and enter the username and password for the source and destination site. They are needed ONLY if either the site being moved or the destination site is ‘https://’ instead of ‘http://’. If the URLs of either one begin with ‘https://’, they are HTTP authenticated. These credentials can be retrieved from the site’s server logs. Some website hosts offer apps in cPanel that make it easier to browse those logs.
2. Fill up the form, click ‘Migrate’
Once you have all the details required, fill up the Migrate Guru form, and click on the ‘Migrate’ button.
Doing so will take you to a real-time progress screen where you can see how much of the migration process is over, and how much is left.
Migrate Guru will send you an email notification confirming that the process of migration has begun. Meanwhile, you will also be taken to a screen that portrays the real-time progress of your website migration. The link for the same can also be found in the email notification. Once the migration process is completed, you will receive another email from Migrate Guru notifying about the successful migration, and the link to the migrated site.
A friendly note: Once you’ve moved your site
After your WordPress migration is over, it’s important that you repoint the DNS of your site to the location it’s been moved to. It takes about 4 hours for this to happen. For most hosting accounts, you can edit your DNS settings from the cPanel, under a variant of ‘DNS settings’.
Apart from high host resets, performance, reliability, poor help/supports are among the many reasons you may want to leave your current host. But moving a WordPress site to a new host can be a pain especially if you’re new to the ecosystem or are unfamiliar with the processes required. However, having a WordPress migration plugin like Migrate Guru significantly reduces the time and effort required to move your site without any downtime. Finally building a website is not all there is to it, proper keyword research and good SEO practices are required for your site to rank on search engines.