Migrating a WordPress site may seem daunting, but it doesn‘t have to be with the right approach. As a webmaster with over 15 years of experience using WordPress, I‘ve helped clients migrate dozens of WordPress sites.
In this comprehensive guide, I‘ll share everything you need to know to smoothly export your WordPress site, whether you‘re a beginner or advanced user. We‘ll cover:
- Key Reasons to Export a WordPress Site
- Step-by-Step Guide to Using the WordPress Exporter
- Host and Backup Plugin Migration Methods
- Manual Migration for Advanced Users
- Avoiding Common Migration Mistakes
- Alternative Options for Non-WordPress Sites
By the end, you‘ll have the confidence to tackle migrating your own WordPress site. Let‘s dive in!
Contents
Why You Should Export Your WordPress Site
Before we get into the how-to, let‘s discuss a few reasons you may want to export your WordPress site:
Migrate to a New Host or Domain
One of the most common reasons to migrate a WordPress site is switching web hosts or moving to a new domain. An export provides an easy way to transition while preserving all your content and data.
In fact, 34% of site owners say moving hosts is a top reason they migrate their WordPress site.
Back Up Your Site
Having a full WordPress site export serves as a comprehensive backup. If anything happens to your current site, you have the peace of mind of having all your posts, plugins, themes, and assets backed up.
Think of it as making a complete clone of your site you can restore at any time.
Copy Your Site for Staging
You may want to create a staging copy of your live production site for testing purposes. Exporting your site allows you to import it on a development domain without impacting your live site.
Download Your Content
Whether you want to save your posts for your personal records or import them into a new site, an export gives you all your content in easy downloadable files.
Migrate from WordPress.com to WordPress.org
Exporting provides a simple way to move from a WordPress.com hosted site to a self-hosted WordPress.org site where you have more control.
Clearly identifying your reasons for migrating will dictate the best export method to use, which we‘ll explore next.
How to Use the WordPress Exporter Tool
The simplest way to export basic WordPress site content is using the built-in WordPress exporter tool. Here‘s how it works:
- Log in to your WordPress dashboard, and go to Tools > Export.
- Select the All Content option to export all posts, pages, comments, custom fields, categories, and tags.
- Click Download Export File – this will package up your content and save it as a WXR (.xml) file.
- To import the content to a new site, install the WordPress Importer plugin on the destination site.
- In the new site‘s dashboard, go to Tools > Import and upload the WXR file you exported.
- The importer will transfer over all your exported content.
In my experience moving client sites, the WordPress exporter works great for quickly transferring your core content from one WordPress site to another.
However, it‘s important to note the exporter only includes your content – not your plugins, themes, media, or settings. For that, you‘ll need to use a different method covered later in this guide.
Exporting Other WordPress Data
In addition to the All Content export, you can select other data to export under Tools > Export:
- Posts
- Pages
- Comments
- Custom Fields
- Categories
- Tags
- Navigation Menus
- Users
The exporter allows you to download .xml files containing each of these elements.
For example, you could only export your Navigation Menus to import them into another site while leaving other content out.
Limitations to Know
While handy for basic migrations, some limitations to note with the built-in WordPress exporter:
- No plugin or theme files are exported
- Media attachments like images are not exported
- Site data like settings and widgets are not included
- Can‘t select specific content – only exports entire categories
For complete site migrations, you‘ll want to use a more robust method covered next. But for quickly moving your posts and pages, the exporter works great.
Using Host and Backup Plugin Migration Tools
For seamless WordPress site migrations including all plugins, themes, and media files, leveraging host and backup plugin automation tools is the way to go.
Based on my experience, this should cover 90% of most users‘ migration needs.
Bluehost Site Migrator
If migrating your site to Bluehost, using their Site Migrator plugin makes the process easy:
- Install Site Migrator on your current WordPress site.
- Click "Check Compatibility" to verify your site works with the migrator.
- Click "Start Transfer" which packages up your entire site.
- Log in to your new Bluehost account which will start the transfer.
- Bluehost will migrate your site including plugins, themes, and media.
I‘ve used this plugin successfully to migrate client sites to Bluehost many times. As long as your site is compatible, it‘s a smooth automated transfer.
SiteGround Migrator
SiteGround hosts offer a similar automated migration process using their SiteGround Migrator plugin:
- Install the plugin on your current WordPress site.
- Generate a migration token in your new SiteGround account.
- Enter the token in the plugin settings and click "Initiate Transfer".
- Your entire WordPress site will be packaged and migrated over.
I‘ve found their migration process to be seamless in my experience moving client sites to SiteGround hosting.
UpdraftPlus
The UpdraftPlus WordPress backup plugin also lets you migrate sites. With over 3 million active installs, it‘s a popular choice.
To use UpdraftPlus‘s migration feature:
- Install and activate the plugin on your current site.
- Go to Backup/Restore and click the Migrate Site tab.
- Enter your new hosting details and click Export to create a backup.
- UpdraftPlus will migrate your backup to the new host automatically.
I lean on UpdraftPlus for both migrations and backups. The free version handles most standard WordPress sites.
Duplicator
Another excellent migration plugin is Duplicator. Like UpdraftPlus, it lets you migrate entire WordPress sites with ease.
To use Duplicator:
- Install and activate the plugin on your current site.
- Go to Tools > Duplicator and click "Create New".
- Give your export a name, then click "Build". This will create a .zip backup.
- Download and extract the backup files.
- Import the backup to your new WordPress host.
Duplicator is great if you want to manually transfer the backup files yourself rather than relying on automation.
Choosing the Right Migration Tool
When picking a migration plugin, consider:
- Your hosting provider – some offer specialized plugins.
- Plugin reviews and ratings to select a trusted option.
- Automatic vs manual migration – your technical skill level.
- Available support resources if you need help.
- Any costs involved for premium features or addons.
As long as you select a well-reviewed plugin from a trusted vendor, you can‘t go wrong. The key is avoiding janky or sketchy plugins. Stick with a mainstream reputable choice.
Manual Migration for Advanced Users
For those comfortable using SFTP, FTP, cPanel, and database tools like phpMyAdmin, you can manually migrate a WordPress site. Here‘s a high-level overview:
- Use an SFTP client or FTP to export your WordPress file system including plugins, themes, and uploads.
- Export your MySQL database using phpMyAdmin or similar database tool.
- Transfer the files and database backup to your new host.
- Import the database and files into your new WordPress installation.
Manual migration gives you complete control but requires strong technical skills. For most users, using a plugin is far easier.
However, in some scenarios a manual migration may be preferred or required, like:
- Migrating from a non-WordPress platform like Squarespace or Wix.
- Migrating a very large or complex WordPress site.
- Your new host doesn‘t support automated transfers.
- You need to heavily modify the site during migration.
Step-by-Step Manual Migration Walkthrough
If you do decide to manually migrate, follow these steps:
Export Database
- Access phpMyAdmin for your current host through cPanel.
- Click the Export tab to open the database exporter.
- Select your WordPress database and click Go to export all tables.
This will export your database contents to a SQL file.
Export Files
- Use an SFTP client like FileZilla to access your site‘s files.
- Navigate to
/wp-content/and download plugins, themes, and uploads folders. - Also download any other custom folders your site uses.
This grabs all your necessary files.
Transfer to New Host
- Upload downloaded SQL file and all export folders to new host using FTP/SFTP.
- Import SQL file into the MySQL database using phpMyAdmin.
- Ensure
/wp-content/folders have correct permissions.
This moves your site files and data to new host.
Update Settings
- Update
wp-config.phpsettings like database info for new host. - Perform a find and replace on SQL export and files to update domain references.
- Update any hardcoded links in posts, pages, widgets, etc.
This final step ensures your site works on the new host location.
Performing a manual migration requires time and technical skill. But if done right, can work for complex site migrations.
Common WordPress Migration Mistakes to Avoid
Based on past client projects, here are some common mistakes I‘ve seen – and how to avoid them with your own migration:
Not Testing Before Go-Live
Before switching your site‘s domain DNS, thoroughly test your migrated site on the new host. Click around, check images, test forms, etc.
This helps catch any issues missed during migration so you can fix them before launching.
Skipping Find and Replace
Remember to run a database find and replace on all references to your old domain and paths. This ensures links point to the new host.
Some plugins offer cross-domain find and replace during migration. But always double check!
Forgetting Media Files
It‘s easy to miss exporting media attachments during migration. This can lead to broken images across your content.
Be sure to migrate /wp-uploads/ to grab all media files. Verify images display properly after migrating.
Assuming Redirects are Set Up
To avoid losing traffic and rankings, set up 301 redirects from your old host to the new site domain.
Many hosts can handle this automatically. But confirm redirects are in place following any DNS changes.
Not Updating Database Settings
Don‘t forget to update your wp-config.php and any plugins with new database settings for your migrated site.
This ensures proper connectivity between WordPress and the database on the new host.
Mistakes happen – don‘t panic! Just take it slow, test thoroughly, and use a checklist to stay organized during your migration.
Options for Non-WordPress Site Migrations
So far we‘ve covered WordPress to WordPress migrations. What about migrating from another platform?
While WordPress plugins won‘t help for platforms like Wix or Squarespace, you can still export your content and files manually:
-
Wix – Use Wix‘s site backup tool to export a full site package, then manually import into WordPress.
-
Weebly – Manually download all your site assets and data, then transfer to WordPress.
-
Squarespace -Squarespace has an "Export All" tool to download your data and images. Manually import into a new WordPress site.
Check out my separate guides linked below for step-by-step instructions on migrating specific platforms:
- How to Migrate from Wix to WordPress
- How to Migrate from Weebly to WordPress
- Migrate from Squarespace to WordPress
While more hands-on work, you can absolutely transition to WordPress from other platforms.
Wrapping Up
Migrating your WordPress site doesn‘t need to be a painful process. As long as you use the proper migration method for your needs, it can be smooth sailing.
For quickly transferring content, leverage the built-in WordPress exporter. But for full site migrations, take advantage of the excellent automation tools offered by hosts and backup plugins to do the heavy lifting. Don‘t be afraid to get your hands dirty with a manual migration if you need full control.
No matter your skill level or site complexity, this guide should give you a clear roadmap to successfully exporting your WordPress site. Don‘t hesitate to reach out via the comments if you have any other questions!
