WordPress website migration. Chances are if you’re reading this article, you’re most likely interested in either learning how to move, a la migrate, your WordPress website now or in the future.
Whatever your reason, it can be quite a complicated process, especially if you’re doing it for the first time. That’s why we’re here, to break down the different types of migrations, depending on your needs.
So, are you ready to get moving, literally and figuratively?
How to transfer your website from one hosting provider to another
Let’s say, hypothetically-speaking, that the conditions of your hosting provider change and you’re told you need to move your WordPress website’s content to another provider.
Sure, it’s not an ideal situation but all it takes is a little research to figure out which new provider will suit you best. First and foremost, contact the hosting provider’s support team to confirm if they:
- assist with transfers, and
- what type of transfers they actually assist with.
Many hosting providers are happy to assist you with a full hosting transfer and some will even assist you with the transfer of one WordPress website. Namecheap, for example, not only assists with hosting transfers from third-party providers but also provides assistance for single website transfers, depending on the case.
If you discover that the hosting provider you’re interested in does not assist with transfers, performing the migration on your own is possible (more on this in a bit).
Don’t forget that some providers, for example Blogger, WordPress.com or non-WordPress ones are especially tricky when it comes to migration, so if your budget allows, you might want to consider hiring a web developer for expert assistance.
Once you’ve chosen your new hosting provider to migrate to, we recommend using a service such as hosts.cx to check the transferred content of your existing hosting account. Make sure to do this before you officially migrate and re-point your domain name. Also, to avoid any downtime related to the pointing of your domain name.
If you decide to transfer to EasyWP, Namecheap’s Managed WordPress solution, you’ll have the opportunity to create your website with a free temporary domain name and can check how your website looks after migration using that name. In other words, instead of checking your transferred content with hosts.cx, you’ll check via the temporary domain name provided.
How to migrate from one hosting account to another
Perhaps you’ve realized you need more resources for your WordPress website. You might think that migrating from one hosting account to another sounds like the logical thing to do here, right?
Actually, if your decision to migrate to another account is only because you need more hosting resources for your WordPress website, we recommend that you upgrade your hosting plan. In this particular scenario, your hosting provider should be able to take care of the migration process for you, leaving your website untouched.
However, if you want to move your WordPress website for a different reason, e.g. transferring your website’s ownership, there are a couple of ways to go about this:
- manually transferring via an FTP, or
- transferring with transfer scripts.
Always make sure, though, that the new hosting space you plan to move to will be able to handle the load your website already has.
Whichever option you choose, make sure you back up everything beforehand and check your WordPress website on the destination server after transferring and before pointing your domain name. Trust us, doing so will save you any future headaches related to data loss and downtime.
How to migrate from one domain name to another
If you decide that you simply want to transfer your WordPress website from one domain name to another, this one is relatively easy to accomplish.
If you’re an EasyWP customer, you can migrate via your EasyWP dashboard, rather than changing the links in your WordPress dashboard via wp-admin as indicated in the screenshot below.
To change links in your WordPress dashboard, first select Settings from the drop-down list and change the link as highlighted in the blue box.
Keep in mind that older, larger-sized websites may not respond well to a simple link change. If you find this is the case, you might need to update the links via a database code editor. Although this process may sound overly complicated, it’s pretty easy if you:
- follow our Knowledgebase article,
- use an external script, or
- hire a web developer.
And remember, don’t forget to do a backup first!
How to migrate a website manually
If you decide to move your WordPress website manually from localhost or from an online hosting account, you’ll more than likely be doing it through an FTP (file transfer protocol). This means taking your files and database on the original server, packing them into an archive, moving that archive to another server, and restoring the files there.
Before you even think of manual migration, however, you’ll need to make sure all your files are properly backed up. Here are a few ways to do this:
Using a backup tool
A backup tool such as cPanel backup literally backs up all your data (yes, even emails and settings!) but it’s super reliable and quick, too. Just keep in mind that you’ll have to sift through every folder to find exactly what you’re looking for.
Using the Softaculous app installer
If you installed WordPress using the Softaculous app installer, e.g. with Namecheap Shared Hosting, you can easily export a backup via your cPanel. This backup, however, only contains files of that particular website.
Backing up manually
If you decide to do it yourself, you’ll have to make sure that you don’t miss any important files and that you create a file archive that belongs to your respective WordPress website. These should be files and folders labeled with the “wp-” prefix and index.php.
Then, after archiving your files, download them to your computer. Next up? Downloading your database. If you have more than one WordPress website in your account, check the database name that’s mentioned in the wp-config.php file of your website. Now visit the phpMyAdmin, choose the respective database, select all tables, and click “Export” using an sql format, as indicated below:
Once you’ve downloaded everything and safely acquired the respective files and database for your website, you’re safe to begin the restoration process.
Here, no matter what backup option you chose, you’ll need to upload and restore your files from the archive into the correct folder. (Before you do this, make sure that wp- files are located inside the domain folder, not in a subfolder or archive of some kind.) Now it’s time to create and import the database and correct the data in the wp-config.php file.
If you’re an EasyWP customer, however, you’ll simply need to import your database without touching the wp-config.php file. In an ideal world, try to not replace the default EasyWP config file with the file from the source server.
[Editor’s note: If you have WordPress Multisite, this process will be more complicated. If you’re unsure about managing this type of migration solo, we recommend professional help from a developer. ]
Plugins for WordPress migration
The beauty of WordPress is that no matter what problem you face, it can almost always be solved by a plugin. Here are two of our favorite migration plugins that’ll get the job done.
- All-in-One WP Migration
As the name suggests, this plugin is comprehensive and specializes in website migrations. It supports a wide variety of WordPress hosting providers, operating systems (OS), PHP versions, even outdated WordPress versions. All-in-One WP Migration works by bypassing your hosting provider’s file size limits through importing data chunks. However, it’s worth noting that the free version of this plugin has a size limit for imported data.
With this plugin, you can either create a copy of your website or duplicate your website and install it on your destination server. Simple yet effective, its step-by-step wizard guides you through a variety of migration scenarios, without the need for technical know-how. Duplicator also scans your website, before and after the migration, to ensure everything went smoothly.
How to migrate specific content
Let’s say you’re looking to transfer some specific posts or even all your website content to another website and/or domain name. Luckily, WordPress makes it pretty easy to do so, within just a few simple steps:
- Log in to the wp-admin of your original website.
- Go to the Tools >> Export menu, choose which type of export you want to perform, and click Export to download the Export File.
[Editor’s note: If you only want to export website posts, please be aware that the featured images will need to be migrated manually to the destination website.]
To import this content on your destination website, simply:
- Log in to the wp-admin dashboard of your destination website.
- Go to the Tools >> Import and choose WordPress.
- Now select Run Importer.
If you don’t see the option to run an import, click “Install Now” to install the plugin to allow you to proceed.
Choose the file you downloaded from another website (search for the XML file) and click the Upload file and import button. Please note that on the following page, you’ll need to choose the Author user who will be assigned to the posts and pages in order to proceed with the import.
Sure, migrating your website might be a bit of a hassle but it’s well worth it in the long run.
Ultimately, any successful WordPress migration lies in the details. Although our guide may not cover every single scenario, you should now have a pretty good overview as well as an idea of what challenges you may face along the way, plus some ideas on how to solve them.
When it comes to hosting migrations, since there are a few different types out there and many different providers, it’s important to research which ones will suit your website best moving forward with any transfer. If you find that your current hosting plan or provider isn’t up to par, you’ll want to switch to one that provides you with the performance, stability, and security your website needs to succeed.
Oh, and don’t forget to make those backups!
Have you migrated your WordPress website recently? Let us know your experience with the process in the comments section below!