A Step-by-Step Guide to Migrate A WordPress Site

If you find yourself needing to migrate a WordPress website, it may seem like a big undertaking. But sometimes, it's a necessity. People decide to move hosts due to various reasons, such as:

  • URL changes
  • Upgrades
  • Reliability issues
  • Performance issues
  • Rebranding
  • Security concerns

The goal is typically to improve upon the current hosting situation. The final result will lead to a better overall experience for you and your visitors.

Migrating your site is fairly easy once you learn the basics and find the right tools. Anyone should be able to successfully move a WordPress site to a new host by following a few steps. 

Part 1: Preparation To Migrate a WordPress Site

Migrating a WordPress site begins with a little preparation. Going through these steps will prevent a lot of headaches and potential issues that could grind everything to a halt. 

1. Backup Your WordPress Site

Backing up your website data is a key step in the whole migration process. It creates a copy of your site in case something goes wrong. This preserves all of your data so that if there is a loss or corruption that occurs, you still have your site information.

If you fail to create a backup and something happens, you could lose everything. You would have to start all over with the creation of your website, which is not a task anyone wants to undertake.

You can create a backup manually using a File Transfer Protocol tool. You will need to connect the FTP to your site and download all the files to your computer. To have a full backup of WordPress content, you will also need to use phpMyAdmin to access the site's database and export it to your computer.

Taking both of these steps ensures the process encompasses all aspects of the site:

  • Core installation
  • Plugins
  • Themes
  • Images and files
  • Coding files
  • Other files and static pages.

An easier way to backup is to use plugins in WordPress that will handle the process for you. These include:

  • UpdraftPlus
  • Duplicator
  • BackWPup
  • Jetpack VaultPress Backup

To use a migration plugin, go to your WordPress dashboard and find the Plugins tab. Click Add New and search for the plugin you want to use. Click Install Now and Activate.

You may need to adjust the settings to meet your needs and choose where the backup file will go on your computer. You can then click the button to begin the backup process.

You can also use cPanel. To do this, go into the cPanel host under Files and choose Backup Wizard. Choose Back Up and then Full Backup from the options. Finally, click Generate Backup to begin the process. You will need to download the file to your computer once this is complete.

Backing up your site does take time. If you have a larger site, it will take a lot more time. However, this is time well spent because having this copy of your data is invaluable. 

2. Choose Your New Hosting Provider

Choosing the new host is a big decision that will impact your website moving forward. You want to make this decision based on your needs and not just due to price. Your hosting plan choice will impact the overall website experience, so it must be the right one.

You need to begin by knowing your website needs. Consider the type of content you have and the amount of traffic. Look at the demands of your site on resources. 

Also think about your other needs, such as those for technical support or email services. Do not forget about security as well.

As you begin to look at different hosting providers, you want to consider the various packages each one offers. Hosts offer packages with different features, which should help you to find the one that is the best match to your needs.

You will want to look into the following about each host:

  • Reliability and uptime
  • Scalability
  • Security
  • Performance
  • Customer support
  • Pricing
  • User-friendliness of the interface.
  • Backup options
  • Reputation
  • Additional features specific to your needs, such as free domain registration, email accounts, and e-commerce tools.

You should ensure the hosting server will allow room for the growth of your website by offering upgrade options. The process should be simple and not require you to jump through hoops.

You also want to make sure you understand the terms of service. This document will reveal any fees, limitations, and policies that could impact your site.

It’s also helpful to understand the types of hosting available. Hosting options include:

  • Shared: One server for many websites, usually a low-cost option
  • Virtual Private Server or VPS: Virtual partitions within one server for all websites, provides dedicated resources for each site
  • Dedicated: One server per website
  • Managed: Any of the above can be managed, which means the host is managing the technical aspects of supporting your website, such as backing up data for you

While there are many choices on the market for hosts, some of the top ones for manual migration include:

  • HostGator: Offers different pricing options, great for larger sites or heavy traffic, provides free SSL certificates and backups, has amazing security, provides free email, enables simple WordPress installation
  • DreamHost: An affordable option with WordPress plans, provides a staging site
  • InMotion Hosting: Has easy migration tools, low prices, and a money-back guarantee, includes unlimited email with 10 addresses, offers great speeds
  • Bluehost: Has flexible and easy WordPress functionality, includes SEO tools, offers various security features and protection, has no traffic limits, is user-friendly, offers free email, reliable performance, and great plug-ins
  • GoDaddy: One of the largest hosting companies with a great reputation, offers a free domain, provides advanced security features, has an easy-to-use interface, gives daily backups 

3. Set Up the New Hosting Environment

Once you make your choice of a new host, the final consideration is to ensure it meets WordPress requirements:

  • PHP version 7.4 or greater.
  • MySQL version 8.0 or greater or MariaDB version 10.4 or greater.
  • HTTPS support

If everything looks good, you can sign up for the new host. 

As you begin the process of migrating a WordPress site, you may need to create a temporary domain or subdomain. A temporary domain allows you to view the site and test it. Most hosts will provide this service, and how you create one depends on the specific host.

A subdomain helps you to make your website more specific to users. It allows you to divide your website and target a specific audience, such as desktop or mobile users. You can also use it for regional sites or different product lines. In addition, this provides an alternative option for testing instead of using a temporary domain.

A subdomain looks like this: subdomainname.yourwebsite.com.

You will need to first create it in your hosting dashboard. The specific steps may vary, but they usually involve going under Domains and entering the new subdomain name.

a man working on a website builder from his laptop

Part 2: Migration Process

Once you have completed all the preparations to migrate a WordPress site, you are ready to get to the actual moving process.

Migration can occur manually or automatically. Manual requires using FTP and the ability to access databases and modify files. This process is a little more involved:

Automatic occurs with a plug-in or other tool that handles all the work for you. The downside is that this can produce errors and could be trickier for larger websites. However, some hosts will offer free migration tools, which remove the guesswork and streamline the process.

If you want to migrate a WordPress site manually, there are some specific steps you have to follow to ensure everything goes smoothly.

1. Export Your WordPress Database

The process begins with exporting your database. To do this, you will need to go into your hosting account. Using cPanel, which is a common choice for hosts, do the following:

  • Choose Databases
  • Select MySQL Databases
  • Choose Create a New Database.
  • Enter a name and select Create Database.
  • Select Add A New User and enter your name and password.
  • Click Create a User
  • Go to Add a User to a Database and choose the user and database you created from the menu.
  • Click Add
  • Go to Manage User Privileges, check the All Privileges box.
  • Click Make Changes

If you have a large database, be cautious as they can cause issues during exporting. Some helpful tips to avoid problems include:

  • Omit unnecessary tables
  • Use compression options in the exporting tool.
  • Export in chunks instead of all at one time.
  • Look for plugins designed specifically for large databases.
  • Optimize the server settings to provide enough memory and processing power.

Make sure that you are careful throughout this process and do not delete or remove anything without being positive such a change will not remove or change necessary data. Remember, though, you have your backup file, so you can always start over if something does go wrong.

2. Transfer Files to the New Host

Now, you need to get your WordPress files into the new host server. Follow these steps in cPanel to do this:

  • Under phpMyAdmin, choose Databases.
  • Select your new database.
  • Click Import
  • Select Browse to find the backup files on your computer.
  • Click Go

You will want to check file and folder permissions during the migration process. As you move data, permissions may change. Typically, using an FTP tool will help prevent this issue. You can go into your cPanel and adjust permissions as needed once you get everything migrated to the new host.

3. Import Your Database to the New Host

When importing your database to the new host, you also need to adjust your database connection details. You will do this by editing the site's wp-config.php file.

After the download of your files is complete, all the files will be on the new server. You need to go into the root folder and find the wp-config.php file. Right-click and select view/edit.

You will need to update the following lines to include the new database name and username you selected:

  • define('DB_NAME, 'db_name')
  • define('DB_USER, 'db_user')
  • define('DB_PASSWORD, 'db_pass')

These lines point to the old host, so if you try to visit your website, it won't be able to come up. You are no longer on the old host, and your files don't know how to send visitors to the newly hosted site. By making the changes to include the new database and user names, you are helping with that redirect.

Part 3: Finalizing the Migration

You have gotten through all the complicated steps in the WP migration process, but you aren't quite finished. To finalize the process, you need to check a few more details.

1. Set Up Permalinks and Test the Site

You will need to ensure your permalinks are in good shape and test out the other aspects of the site to be sure everything is working properly.

In WordPress, go to settings and choose Permalinks. Check over everything to make sure it looks correct, and click Save. This should update the permalinks and ensure they continue to work.

You will need to walk through your whole website page by page and check every element. You want to ensure plugins and links work. Check for images that are not showing up properly and videos that aren't playing right. Use all interactive elements to be sure they still function correctly. Finally, skim over the site to be sure everything looks good and works as it should.

If you find problems, you will need to use your tools to make adjustments. If there is something you cannot fix or a fatal error, you may need to grab your backup files and start the migration process over. 

2. Point Your Domain to the New Host

Now, you want to be sure your domain is pointing to the right host. Your Domain Name Server or DNS is what takes your URL and converts it to an IP address that gets your visitors to your website. It has to go to the right place or else nobody will be able to find your site.

You must make sure the DNS knows that you moved. You can make this happen through your domain provider. General steps include:

  • Unlocking your domain name.
  • Contacting the new hosting service to start the domain transfer.
  • Request an authorization code.
  • Provide the code to the host.

The process can take about seven days in total due to wait times to get authorization codes and the actual transfer time.

3. Post-Migration Steps

Once you have taken all the steps to migrate a WordPress site, you will need to do some final checks to ensure your website is working as it should.

An important step is to set up a redirect that will ensure people visiting your old website will make it to the new website. You can do this with a permanent 301 redirect. A plug-in can also assist with this to ensure every page of your old site will redirect to the new website.

You want to update all your Google Analytics as well. Make sure you also let others know you've moved your website.

Do a final walkthrough, page by page, to ensure everything is working properly and looks good. 

You also want to protect your SEO. Ensure all metadata, titles, and HTML markup are in place.

Take this as an opportunity to look at performance, too. Remove pages that aren't doing good or change them if needed. Don't remove content without considering the impact. Removing anything could impact your SEO. Get help from an outside source to ensure your SEO is on track

Wrapping Up the Process To Migrate a WordPress Site

elk logo

While the process of migrating a WordPress site may seem complex. It really breaks down to backing up your data, transferring it, and then making sure everything looks great. The key to success is taking your time.

Also, recognizing migration can be tricky sometimes. Instead of stressing over any issues that may come up, work with elk Marketing. We can assist you with any struggles and help to make the migration process easy. Learn more about our services today.