WordPress
Article

WordPress Migrations Made Easy

By Nataliya Bogdanets

In this article, we’re going to cover the various ways you can migrate your website to WordPress.

If the fear of content migration is keeping you from transferring from an old website to a new one, or the phrase ‘data migration’ sends chills up your spine, then you’ve landed on the right page. In this article, I plan on tackling the most common concerns about WordPress website migration and providing all the necessary information and pointers to help eradicate your fears.

Migrations are something that many site owners do not feel very comfortable with, and for good reason. But, despite the fact that the task is really tedious and requires a vast amount of resources to be done properly, data migration is not a rocket science. At its simplest, it can be summed up as matching the database fields of the source website with the database fields of the target site (for the purposes of this article, the existing site will be called the source site and the new site will be called the target site).

Website owners have two methods of content migration at their disposal:

  • Manual (copying and pasting every piece of content)
  • Automated (with the help of online converters)

Manual Data Migration

If a website is migrated manually, the posts from the source website database need to be added to the database of the target website. For instance, the database of a Drupal website from the ‘node’ table should be recorded in the wp_posts table of WordPress. Each content type can contain different custom fields (text, media, and so on), which are also part of the content and are then saved in different tables (such as field_data_field_url, field_data_field_teaser). This is displayed in the image below:

Custom Fields

In the case of manual migration, a user should find the corresponding table for each content type. The example provided below shows that the post with ID 99 in the author field contains ‘Trip Gabriel’, as you’d expect, this would need to exist in the target WordPress website. Each content type may contain any number of custom fields, and in the process of conversion the above-mentioned scenario, should be repeated n-times.

WordPress Fields

Now the question is, how do you add this data to a WordPress website? You’ll need to save the content in wp_posts table, as shown in the image below:

WordPress tables

In order to set custom fields in WordPress, you’ll need to use the wp-postmeta table:

wp_postsmeta

Sometimes, custom fields contain images or other media. In this case, the media should be imported manually from the source site (in our Drupal example, that would be in /sites/default/files) to WordPress (wp-content/uploads/).

Professionals who undertake manual data migration all the time are well versed in the art of handling the various challenges associated with this process. But what about the rest of us? That’s where automated data migration comes in handy.

Automated Data Migration

Automating the process of data migration can save numerous hours, allowing website owners to concentrate on running their business, instead of taking care of migration hassles. It can involve little to no manual effort, significantly slashing the time and resources required.

Content types mapping in Drupal to WordPress migration

The main difference between manual and automated methods of data conversion is the time spent on the process. For instance, if you have a site of 10, 25 or even 50 pages – then don’t even waste your time talking about automation. Buckle down and start copying and pasting!

In contrast, if your website comprises hundreds, or thousands (or even more) pages that you want to keep, the manual method of data migration is definitely not going to practical. In this case, automation is your best bet. There are a number of different tools available when it comes to website migration, particularly if you’re operating a WordPress website.

Tools and Services for WordPress Migrations

Native WordPress Import

With over a million downloads, Native WordPress Import is, by far and away, the most popular of all the plugins on the market for data migration. And it’s no wonder, given all the different types of data that this plugin is able to import, including: pages, posts, and all their relevant meta data; any other type of custom post imaginable; custom fields; custom taxonomies, categories and tags; and all your authors and comments. It’s even available in more than 30 different languages.

Native WordPress Import

Plugins for Importing

More Information: https://wordpress.org/plugins/wordpress-importer/

CMS2CMS

CMS2CMS

In the interest of full disclosure, I work with the team at CMS2CMS. That said, I’m more than confident in recommending their service, they’re a great team and they know their stuff. CMS2CMS is an automated migration service that has been specifically developed to switch huge websites across CMS platforms, including WordPress. When using CMS2CMS, the conversion process will begin with a ‘bridge’ dumping the database and sending it to the main CMS2CMS server. This action is performed with both the source and the target websites. As soon as the databases are all dumped, the service initiates the data conversion itself and the process of content updating on the target website database begins. Once the database updating is finished, the target website database (with all the new data) is restored through the installed bridge at the source website.

There are also a number of CMS2CMS plugins in the WordPress plugin directory that let you run a demo migration on a limited number of pages to make sure it works.

More Information: https://www.cms2cms.com

WP Valet

WP Valet has a whole range of experience in WordPress, including supporting website clients and facilitating streamlined website migrations. They pride themselves on having purposely built a team that encompasses each and every facet required to support everything a WordPress website could possibly need. So, it comes as no surprise that they can handle complex website migrations and conversions with ease, including migrations from host to host, CMS to WordPress, multi-database and multi-site conversions. All of their migrations are human-powered and include off-site back-ups, whole site and URL integrity scans, DNS assistance, and post-completion check-ins.

More Information: http://thewpvalet.com/

MigrateToWP

Based in Barcelona, MigrateToWP offers a range of tailored website migration services. A highly experienced band of web professionals, the team is ready and able to migrate content and website themes from all sorts of platforms (including Joomla, Drupal, and other CMSs) across to WordPress. They even promise to move all your content (posts, pages, authors, users, tags, and comments), while maintaining the integrity of your SEO. If you need some additional help, MigrateToWP can also take care of all the server-side migration aspects and any configuration that might be required. They boast a simple, three-step process for every job, and are more than happy to provide free quotes on any job.

More Information: http://migratetowp.com/

In Conclusion

The time, price and process involved in website data migration varies considerably, depending on the amount of data that needs to be migrated. The more data, and the higher the database volume, the more time and money is required.

Despite this, don’t let those two little words (data migration) keep you from achieving your business goals. Take the time to explore different ways to get around your data migration problem, such as automated migration tools and plugins, and prepare to enjoy your brand-new website!

Free Guide:

7 Habits of Successful CTOs

"What makes a great CTO?" Engineering skills? Business savvy? An innate tendency to channel a mythical creature (ahem, unicorn)? All of the above? Discover the top traits of the most successful CTOs in this free guide.

Comments
Lucanos

Personally, I use Duplicator (available through Wordpress Plugin Directory), a Wordpress plugin which compresses all the website files, along with a database dump into a ZIP file and creates a PHP file which automates the extraction of that ZIP file, and the reconfiguration of the site to a new domain.

All you do is upload the ZIP and PHP file into an empty folder, access the PHP file through a browser, and follow the bouncing ball. Impossibly simple.

I had done manual migrations, or semi-automated migrations tons of times before I found this plugin. I'd never go back, and can't think of a reason why I would use anything but Duplicator.

TheEdge

Tried CMS2CMS and just ended up with an SQL dump file frowning

Dmytro_Lazarchuk

For users with no programming knowledge automated migration service is the best option. Moreover, plugins those mentioned above, are suitable only for migration from one WP to another. If you want to migrate from other platforms, such as Joomla or Drupal, you need to keep relations and to convert tables in a proper way. Believe me, it's not an easy thing.

Dmytro_Lazarchuk

You used CMS2CMS Preview website for migration and service provided you with dump.
This dump is adopted for your target site (redirects, images etc.) and the file includes simple instruction how you can extract your content.

TheEdge

Yep - tried it. Didn't work basically.

Recommended
Sponsors
Because We Like You
Free Ebooks!

Grab SitePoint's top 10 web dev and design ebooks, completely free!

Get the latest in WordPress, once a week, for free.