One thing I see over and over in the Oxygen community is people struggling with website migrations. Either the migrations fail and they get frustrated, or they complain about being in a position where they're basically crossing their fingers hoping the migration doesn't blow up in their face when all is said and done (even though it migrates fine most of the time).

Well … all your frustration ends today.

After you watch this video, you'll have a 100% success rate with your Oxygen website migrations. Even if the migration fails, nobody will know it failed because of the technique I'm about to show you. The migration will only go live if it's successful!

Additionally, I'm going to show you how to use All In One Migration in combination with this technique to ensure that your migrations are always easy and seamless.

Note: This tutorial is based on MacOS, but it will work for Windows-based computers and Linux-based computers with a couple adjustments.

Step 01: Setup a clean Wordpress install

Open your hosting panel and create a clean Wordpress install. The process for doing this will depend on where/how you host your websites, so this part is up to you.

In the tutorial I demonstrate how to do this in Gridpane, which I HIGHLY recommend if you're an agency.

The key part of this step is to make sure you assign the destination domain to this clean install. If the client's domain is clientdomain.com, make sure that domain is assigned as the primary domain of the install, but do not change the DNS to point to this domain yet.

It's also a good idea at this point to make sure all caching is turned off on the new website, including server caching.

Step 02: Download an export file from the source site using the All-In-One WP Migration plugin

Open the source site (the site you plan on migrating) and navigate to Plugins > Add New. Search for "All-In-One WP Migration" and install it.

Once the plugin is installed and activated, click "export" and choose "file" from the All-In-One dashboard.

This will download a package file to your desktop. This is the file you'll import into the clean Wordpess install.

Note: Take note of the package size. If it's over 500mb, you'll need the All-In-One WP Migration Unlimited Extension to upload it to the new install. It's well worth the $69.

Step 03: Change your computer's host file so you can access your clean install at the destination domain address without changing the DNS.

This is the only technical part, but it ensures that you'll have a 100% success rate with your migrations. Even if something goes wrong, nobody will know. People will only see the migrated website if the migration is successful!

Editing your host file on a Mac

  1. Open terminal (spotlight > search "terminal")
  2. Type in "sudo nano /private/etc/hosts"
  3. Enter your system password
  4. Move the cursor to the bottom blank area and type in the IP address of your clean Wordpress install followed by the destination domain address.
  5. Create a new line and enter the IP address again followed by the alternate version of the destination domain address (either www or non-www).
  6. "Write out" the changes (CTRL + O and then hit "return" to save)

You should now be able to open a separate browser window and navigate to the destination domain address. You will see the clean WP install you created.

If you don't see the clean WP install, there's a chance your DNS cache needs to be flushed. In terminal, exit to the main screen by hitting CTRL + X and then follow these steps:

  1. Enter "sudo dscacheutil –flushcache" and hit return.
  2. Enter your system password and hit return.
  3. Now try accessing the clean WP install at the destination domain address.

If you see the clean WP install at the correct domain, you've done this step successfully. You're the only one who can see this happening – everyone else on the internet will see whatever was there before.

Editing your host file on a Windows computer

I haven't used a Windows machine in over a decade, so these instructions are from a Gridpane tutorial. Good luck!

  1. Find the "Notepad" native app on your computer (search bar > Notepad).
  2. Right click the app icon and choose "run as administrator."
  3. In Notepad, go to File > Open
  4. Navigate to C: > Windows > System32 > Drivers > Etc
  5. From the dropdown at the bottom right, choose "All files."
  6. You should now see a "hosts" file in the Etc folder. Open that.
  7. Move the cursor to the bottom blank area and type in the IP address of your clean Wordpress install followed by the destination domain address.
  8. Create a new line and enter the IP address again followed by the alternate version of the destination domain address (either www or non-www).
  9. Save changes.

You should now be able to open a separate browser window and navigate to the destination domain address. You will see the clean WP install you created.

If you don't see the clean WP install, there's a chance your DNS cache needs to be flushed.

Directions to reset Windows cache.

If you see the clean WP install at the correct domain, you've done this step successfully. You're the only one who can see this happening – everyone else on the internet will see whatever was there before.

Step 04: Upload the package file to the clean WP install.

Once you're able to access the clean install, login and install the All-In-One WP Migration plugin. Add the unlimited extension if needed.

Once the plugin is activated, navigate to the AIO dashboard and select "import." Choose the package file from your computer.

The plugin will upload the expand the package file and then ask you if you want to overwrite the entire website/database. Choose "proceed."

Once the migration is done, refresh the page. You'll be taken to the login screen where you'll need to login again. Note that your previous login from the clean install will likely not work as the site is now the migrated site. Whatever users were on the migrated site are now the users on the new install.

Step 05: Final steps to finish your Oxygen website migration

The following steps are required for all Oxygen migrations regardless of the process you follow:

  1. Reset permalinks twice (Settings > Permalinks)
  2. Re-sign Oxygen shortcodes (Oxygen Settings > Security > Re-Sign Shortcodes)
    1. Check all of the boxes. Anything that doesn't have shortcodes will get skipped).
  3. Clear Oxygen cache (Oxygen Settings > Cache)

Once you've done these three steps, you'll have a correctly migrated website that you can fully navigate at the destination domain address. This ensures that the migration worked for the domain you're migrating to even though you haven't changed the DNS yet.

Step 06: Reset your host file and change DNS

If your migration was successful, open terminal again, clear out the IP/domain instructions you entered earlier, and write out the changes (CTRL + O + Return). Then exit to the main screen (CTRL + X) and clear your DNS cache (sudo dscacheutil -flushcache).

Your computer is now back to normal. If you navigate to the new domain, you will not see the new migrated website. However, rest assured it's there and ready to go.

Open the domain registrar for wherever the domain is registered and edit the DNS. Point the A record to the IP address of the Wordpress install where you migrated the website to. Make sure the alternate version (www or non-www) is entered as a CNAME record pointing back to the @.

Nothing else is required at this point. Once the DNS propagates, the new website will be live without issue 100% of the time.