This website uses cookies

Our website, platform and/or any sub domains use cookies to understand how you use our services, and to improve both your experience and our marketing relevance.

How To Migrate WordPress To Drupal

Updated on March 11, 2021

3 Min Read

WordPress is a very powerful platform that works perfectly for all types of websites and web apps. The easy setup and equally easy integration of components and plugins attract a huge number of developers to the platform.

However, there are situations when WordPress is not the right CMS of choice. Perhaps, WordPress does not offer the right balance of features and development or maybe the development team is feeling adventurous. Whatever, the reason, Drupal offers a very efficient alternative to WordPress in almost all situations.

Migrating a WordPress based website to Drupal appears to a major challenge to many developers. However, the following guide makes the process almost as easy as A-B-C.

As always, backing up the WordPress version before proceeding with the migration process could save you from a lot of grief and headache.


Login to your WordPress Admin

  • Navigate to Tools → Export.
  • Download XML File containing “All content”.

WordPress Export


Make sure that the XML file is valid using xmllint through the command line because WordPress Migrate is very particular about valid XML.

  • xmllint comes pre-installed on OSX.
  • Open terminal and type xmllint testwordpressexport.xml.
  • It will show all the errors in the XML file.
  • Make appropriate fixes to the XML file.
  • After that, run xmllint again to make sure that all errors have been rectified.


Install the appropriate Drupal modules

  • Migrate – A very robust Drupal module for migrating all types of content
  • WordPress Migrate – Migrate submodule that allows you to perform WordPress migration without writing code!
  • Migrate Extras – provides functionality to import clean URLs using Pathauto
  • Pathauto – provides functionality to have clean URLs in Drupal


After logging into Drupal, navigate to the Find Content screen, and click the WordPress Migration tab in the upper right side.

wordpress migration


Choose Import from a File.

  • Select your valid XML file that you saved earlier.

Select XML File


Migration Complete!

Navigate to Find Content to make sure that the data was properly imported.

Find ContentPaths of WordPress images might remain unchanged. This is the main reason behind the broken images issue. This problem could be easily solved by finding and replacing the proper paths in the XML file before importing it into Drupal.


Migrating a WordPress website to Drupal is not a highly technical process, same as migrating from Drupal Commerce to WooCommerce is also easy. The success of the process depends upon the error-free XML file. If you face any difficulty during the migration process or have a related query, please feel free to comment below.

If you wish to try out the migration process, you could opt for Drupal Hosting provided by Cloudways. The process is easy and with one-click installation, you could enjoy great benefits and a great managed hosting experience.

Share your opinion in the comment section. COMMENT NOW

Share This Article

Create interactive Drupal websites easily on the Cloud.

Host your website on optimized Drupal hosting servers.

Owais Alam

is the WordPress Community Manager at Cloudways - A Managed WooCommerce Hosting Platform and a seasoned PHP developer. He loves to develop all sorts of websites on WordPress and is in love with WooCommerce in particular. You can email him at [email protected]


Get Our Newsletter
Be the first to get the latest updates and tutorials.

Thankyou for Subscribing Us!


Webinar: How to Get 100% Scores on Core Web Vitals

Join Joe Williams & Aleksandar Savkovic on 29th of March, 2021.

Do you like what you read?

Get the Latest Updates

Share Your Feedback

Please insert Content

Thank you for your feedback!

Do you like what you read?

Get the Latest Updates

Share Your Feedback

Please insert Content

Thank you for your feedback!