The managed WordPress hosting market is a competitive one. Among one of the most popular WordPress hosts is WP Engine. If you find yourself shopping for a new host, or have recently switched to WP Engine, and need to migrate your website to their platform, I’ll walk you through the process, step-by-step.
While some website migrations involve a bunch of manual steps, WP Engine has made our lives much easier by creating the WP Engine Automated Migration plugin. Once you install the plugin on your existing site, just enter some basic details that WP Engine provides, and you could be up-and-running in an hour or two (depending on how long it takes DNS to do its thing).
[adrotate banner=”91″]
Follow along as I walk you through it…
1. Create a new install in WP Engine account
- Login to my.wpengine.com
- Click “Add install +”
- Give your site a name, and leave “Create a new install” as is
- You can optionally select to make it a transferrable install and/or enable multisite
This might take a few minutes, so please be patient. You’ll receive an email when it’s ready. Your email will look like this:
2. Install WP Engine’s Automated Migration Plugin
- Go to your existing site’s admin area
- Go to Plugins > Add New
- Search for “WP Engine Automated Migration”
- Install & Activate the plugin
3. Get new site SFTP & admin info
- Go back to my.wpengine.com
- Click on your install
- In the left menu, click “Site Migration”
- Click “generate password”
- Keep this page open, or copy all the information to your clipboard. You will need it shortly.
4. Add WP Engine information to the plugin on your existing site
- Go back to the admin area of your site (
yoursite.com/wp-admin/
) - Click “Site Migration” in the left navigation (look near the bottom)
- Enter the information from the previous WP Engine page into the fields on your site’s plugin page
- Click “Migrate”
WP Engine uses a third-party service called BlogVault to grab a snapshot of your site and copy it over to their servers. You’ll be redirected to something like this:
https://wpengine.blogvault.net/migration/123abc456def789ghijkl
This BlogVault page is where you can track the status of the migration. It might say “Processing” for several minutes before it displays the progress. Keep in mind, the larger your site is, the longer this will take. Please be patient.
You’ll also receive an email confirmation the migration has started. It will contain a link back to your migration status page.
5. Check that the migration was successful
After the migration has finished, you want to compare your existing site with the new one that is now on WP Engine’s servers. To do this, you’ll want to pull up two sites:
- yoursite.com
- installname.wpengine.com
Check all pages, posts, comments & other content. Confirm all your functionality is still working. You might even want to login to your admin area and make sure all plugins match up.
If your two sites DO NOT match up exactly, contact WP Engine support to see what went wrong during the migration.
6. Run the WP Engine automated migration plugin again
Yes, you read that right. It sounded strange to me at first, too. But this time, you will change one key piece of information when you run the plugin. For the “Destination Site URL,” enter your actual domain (ex: piedmontecovillage.org
). Keep all the other info the same as the first time.
Running the plugin a second time does two key things:
- It will grab any content that has been changed since the first migration (new/updated posts, new comments, update user profiles, etc.)
- It will adjust the site URL settings in your database to reflect your actual domain. After the first migration, WP Engine still thinks you want your site to live at
sitename.wpengine.com
. But you really want it to live atcompanyname.com
.
Once the second migration is finished…
7. Add your domain to WP Engine
Now we need to tell WP Engine what your actual domain is — because you don’t want people accessing your site at companyname.wpengine.com.
- Go back to my.wpengine.com
- Click on your install
- Click on “Domains”
- Click the “Add New Domain” button
- Enter the URL of your site
- The example below is NOT using www before the domain. If your site uses the www, put your www-version in the “Domain Name” field, and the non-www version in the “Redirect From” field.
While this next part is not necessary, I like to redirect sitename.wpengine.com to my actual domain, as well.
- Next to sitename.wpengine.com, click the “Edit” link
When the modal window shows up, choose your primary domain from the “Redirect to” dropdown menu, and click “Save Changes.”
Now your final domain setup should look like this:
8. Update DNS Records (A Record)
Once you’ve added your domain to WP Engine, you are ready to change your DNS settings. This will vary depending on where you manage the DNS for your domain. I’ll show instructions for GoDaddy below, but if you’re not using GoDaddy for DNS, you’ll need to change the A record for yoursite.com to point to your WP Engine IP address.
An easy way to find your WP Engine IP address is to use the left navigation, and click on “Overview.” You’ll see your IP address listed in your “Install Stats.”
How to update the A record in GoDaddy
- Login to GoDaddy
- Navigate to “My Account”
- Find “Domains,” and click the green “Manage” button
- Click the domain name you want to edit
- Click on the “DNS Zone File” tab
- Click the pencil icon
- Update the IP address in the “Points To” field
- (optional) Adjust your TTL settings
- Click “Finish”
- Click “Save Changes” in the red bar that appears on your Zone File page
After you update the DNS, it could take anywhere from 20 minutes to 12 hours for your changes to take place, and for your site to be served up on your new WP Engine server.
TIP: If you see an option to adjust your “TTL,” set it to the shortest amount of time possible. This will make the update happen faster.
9. (Optional) Delete extra database tables
WP Engine automatically creates default database tables when you setup a new install (ex: wp_options
, wp_posts
, etc.). However, if your old site was hosted on a platform that used custom database prefixes (ex: wp_810xgyt9_options
), you’ll have two sets of database tables.
WP Engine is using your custom-prefixed tables. They ARE NOT using the default tables that they created automatically. If you like to keep your database really clean, you can delete the default ones. Also know that leaving them there will likely do no harm.
NOTE: This is more technical, and requires accessing your database directly. Please take precaution before deleting or modifying anything in your database. And be sure to make a backup first.
- Go to my.wpengine.com
- Click on your install
- Click phpMyAdmin near the bottom-left
- Click on your database name
- Click on the table you want to delete
- Click the “Operations” tab
- Click the “Delete the table (DROP)” link
[adrotate banner=”91″]
Let me know how it worked out for you, or if you ran into any challenges along the way.
We Recommend
https://kinsta.com › wordpress-hosting
Fast and secure infrastructure, worldwide CDN, edge caching, 35 data centers, and enterprise-level features included in all plans. Free site migrations.
https://gravityforms.com › features
Create custom web forms to capture leads, collect payments, automate your workflows, and build your business online. All without ever leaving WordPress.
Leave a Comment