Migrating a site to NNI WPEngine hosting

This NOM explains the process of the automated migration tool or manual migration to migrate a site to WPEngine hosting.

Prerequisites: A Member must have their own website

Difficulty Level: Member • Nerd • Platypus 

Estimated Time: 30 Minutes 

Expected Outcome:The member website is now hosted on the WordPress Engine

Tools Required: A computer and an internet connection

Screen Shot 2020-03-27 at 5.00.45 PM-1

Discovery from Member

As Nerds, we need to do excellent discovery as part of Gizmo’s Circle of Care. To avoid annoying the Member, write down all of your questions as a note in Hubspot before asking them and then send them all at once.

A good starting place for your Discovery questions would be the following (however add as many as you can think of so nothing is missed):

  • Is the Request from a Member?
  • Who/What is {the business/site}?
  • Who created the website?
  • Is your site a wordpress site?
  • Where is the login portal for site management?
  • Where is your site currently hosted?
  • Who is your current domain host registrar?
  • Are you open to changing domain hosts?
  • Do you have a secure channel for providing usernames/passwords other than a phone call?
  • What services/plugins/scripts is the site using currently?
  • How do you pay for the site?
  • Is there any email associated with the domain?
  • How is the site registered?
  • Is the site backed up?
  • Who currently manages the site? Names and emails?
  • Is this site part/integral to daily operations? Will the business have issues if the site is offline?

 

Preliminary Steps

There are a few steps we need to take before deciding which process to use.

  • Log into WPEngine
    • WPEngine has separate user accounts, if you need an account set up contact one of the Nerds with Ownership status accounts.
  • Under installs, clock on Add Install
  • Create an install name
  • Check whether you are creating a transferable install
  • Check whether you are creating a multisite or not
  • Choose an environment
  • Choose whether you are copying an install or creating a new install

 

Determine which process to use

WPEngine has two processes for migrating a site

  • Using the Automated Migration Plugin
    • Easiest way to migrate a site
    • Uses a plugin to assist with site migration
    • Has known incompatibilities that it cannot be used with. If migrating a site with one of these incompatibilities, you must do manual migration.
      • WordPress.com
      • Local Hosting Environments
      • Proprietary Hosting Providers (Wix.com, SquareSpace.com, and other similar companies)
  • Manual site migration
    • More involved process of migration.
    • Can migrate sites that Automated Migration Tool has incompatibilities with.

**All of these steps are listed and written out during the manual site migration process in WPEngine. This part of the NOM is for documentation and for review when WPEngine is not available.

 

Enter your current site's domain name

This section allows you to link domains to the WordPress installation. Be attentive to the www part. Check your live website to see if it uses www in front of the domain name. Most people prefer domain.com. If such is the case, add domain.com to the Primary Domain line, and then add www.domain.com to the optional Redirect line.

You can add URL redirects, extra domains, and domain redirects in the launch stage.

 

Back up your site with your current host

Prior to making any changes, we strongly recommend you backup your website with your current host. This will mean you can restore your website if your updates cause problems.

 

A backup of your website consists of the database (posts, comments, site options, etc.) and the wp-content folder (themes, plugins, and media).

 

Make sure you are not using disallowed plugins

Because some plugins are poorly coded or incompatible with WP Engine's platform, we don't allow them on our hosted sites. Please review the list of disallowed plugins and remove any that are active on your site. Our platform will automatically remove disallowed plugins after 7 days if you do not remove them, which could cause issues on your site.

 

*There is a disallowed plugins list that you can use to make sure you are not using any

 

Most disallowed plugins enable caching or backup functionality. WP Engine offers both as part of our platform, so you have less to manage on your side.



Update plugins, themes, and WordPress Core

We strongly recommend that you update WordPress Core, plugins, and themes prior to migration to ensure your site functions properly after migration. This can also prevent common migration issues associated with outdated software.

 

Note: Updating older themes and plugins may cause issues with your site.

 

Go to the Updates section of WordPress Admin for your current site.

Update all plugins, themes and WordPress Core.

Review your site to ensure everything looks and functions properly.

Troubleshoot and resolve any issues associated with the update.



Export database from your prior hosting provider

This file contains instructions for our server's database language (SQL) to create the posts, comments, and options from your old host on our host. The most common way of accessing your database file is through your host's phpMyAdmin. If you need assistance locating your database, contact your current host provider.

  1. Log in to your current host provider's cPanel
  2. Access phpMyAdmin
  3. Select the site database, on the left, you wish to migrate
  4. Click Export db step4 on the top navigation bar
  5. Under Export Method, select Custom
  6. Under Table(s), click Select all
  7. Under Object creation options, make sure only the following options are checked:image5
  8. Scroll down to the bottom of the page and click Go to save the database to your desktop

     

    Download your wp-content folder

    The wp-content folder contains your plugins, themes, and media from your site. Depending on how big your site is, this can take a while -- sometimes up to a couple of hours. Need an SFTP client? FileZilla works on all operating systems.

    1. Log into your current host via their portal or FTP client.
    2. Access Export content step2
    3. Download/copy the "wp-content" folder to your computer's desktop.

    (Select zip option if available. If not, once the wp-content folder has been downloaded, make sure to zip this folder before uploading to save uploading time and avoid corruption errors.)

     

    Import your database to WP Engine

    This task will walk you through the steps you need to take in order to clear your current default database and seamlessly import your site's database to WP Engine. If you encounter issues importing your database, please contact Support

    1. Click here to access your install's phpMyAdmin (Link on actual site page when setting up)
    2. Click on the database on the far left titled wp_{name}
    3. Halfway down the page, click Check All to select all tables, and select Drop from the dropdown menu.image4-1
    4. Click Yes to confirm
    5. Click the tab
    6. Click Choose File
    7. Select your database that you previously exported wp_{name}.sql
    8. Click Go, located at the bottom of the page
    9. Once you have successfully imported your database, check your table prefixes. If they do not start with "wp_", please visit Changing A Table Prefix for instructions on how to make the necessary changes.image2

       

      Import your wp-content zip file to WP Engine

      Select the files that you downloaded from your previous host and upload them to WP Engine. When the file is uploaded, you'll be prompted to notify support that the file is ready. We will then unzip your file and email you when it's time for you to move to the next step.

       

      Preview your site before directing traffic to it

      Before directing traffic to your site, let's make sure the migration process went smoothly and everything is loading correctly on the servers.

      Note: Some media files may be missing since this is not a live site yet.

      Please enter a domain in the setup section to use site preview.

       

      Synchronize your site

      This step is only necessary if there is some content missing after the migration.

      This might include comments or posts created during the migration process.

       

      If all your content was successfully migrated, please go to "Launch".

      Here are the steps to synchronize your site:

       

      Export (Previous host's WordPress Admin)

       

      1. Go to Tools > Export to access WordPress Admin for your previous host.
      2. Select All Content, or just the Pages/Posts that you want to export.
      3. Click Download Export File. This will save an XML file to your local computer.

      Import (New WP Engine hosted WordPress Admin)

      1. Go to Tools > Import to access WordPress Admin for your WP Engine install.
      2. Select WordPress in the bottom row.
      3. If you haven't installed the WordPress Importer, select Install Now located at the right bottom corner.
      4. Click Choose File
      5. Select the XML file that you previously exported
      6. Select Upload file and Import
      7. Check the box next to Download and Import File Attachments - this will carry over any files associated with the new posts.
      8. Click Submit

      Now, all of your content should be up-to-date and ready to go live

       

      Configure DNS with your registrar

      *If NNI is to have full control over our Member’s site, it is ideal to move their domain to Cloudflare

      At this point, you already imported your data and have previewed your migrated site on WP Engine.

      The next step is to direct traffic to your new site. For that, you need to configure your DNS with your domain registrar. If you are not sure how to do it, contact your registrar company for support.

      Note: Remember that DNS can take 24 to 72 hours to propagate.

      1. Shorten DNS TTL (Time to Live)
        Within 48 hours of launch, we recommend you shorten DNS TTL to 5 minutes in preparation for switching DNS over to WP Engine. That way, there's a greater likelihood the DNS change will propagate swiftly, and traffic will be successfully diverted to your migrated site at WP Engine. Contact your domain registrar for instructions on how to accomplish this.
      2. Configure your DNS for:

        Primary domain: Setup Primary Domain

        Redirect: Setup Redirect

        To point to your CNAME: {name}.wpengine.com

      Configuring DNS with Cloudflare

      Cloudflare is our preferred Domain host when it comes to WPEngine hosting. 

       

      Change WordPress Address and Site address from WPEngine to actual domain name

      This step will change the site address from youraddress.wpengine.com to youraddress.com

      • Log into your WPEnigine profile
        • Click on the installation you are working on
        • Navigate to domains
        • Set your wpengine domain as primary
      • Visit your site and log into wordpress admin
        • You will be kicked from the page
        • In Wordpress admin go to settings > general
        • Locate “Wordpress Address (URL)” and change it from the WPEngine URL to your primary preferred domain.
        • Locate “Site Address (URL)” and change it from the WPEngine URL to your primary preferred domain.
        • Press save at the bottom of the page.
          • You will be kicked from the page
      • Navigate back to your  WPEngine profile
        • Click “Add Domain”
        • Enter www domain into box
        • Click add domain
        • Click on the installation you are working on
        • Navigate to domains
        • Set your preferred domain as your primary domain
        • If set up in Cloudflare DNS, add your www domain to domain list as well
          • Click "Add Domain"
          • Enter www domain into box
          • Click "Add Domain"

      Notify me when my site is live

      Once you have configured DNS, the process of propagation can take hours or days to complete. To avoid having to monitor when your site has gone live, just enter your email address below, and we'll notify you when we detect that DNS has successfully propagated on our side.

       

      (Optional Steps)

      URL redirects

      (Optional)

      For best performance, setup all of your URL redirects in your WP Engine User Portal instead of using the htaccess file or plugins.

       

      Domain redirects

      (Optional)

      If you have additional domains, or domain redirects you would like to use for your site, you can configure them in the Domains section.

       

      SSL certificates

      (Optional)

      An SSL certificate gives your customers peace of mind and security because the encrypted data cannot be intercepted by third parties. You must configure DNS before setting up SSL.