The ultimate Drupal to WordPress migration checklist

Migrating websites to a different content management system platform is incredibly complex but developers and site owners often underestimate the amount of work involved. Drupal to WordPress migrations can be especially tricky because they target very different types of users. You can quickly run into trouble if you start a migration project without considering some key areas.

My own migration project framework starts off with an analysis phase designed to discover as much as possible about the client’s needs and the impact on project resources. Over the years I’ve compiled a set of questions and considerations specifically for Drupal to WordPress migrations.

Developers and site owners can use this list to better understand their project’s scope. I’ve rather cheekily referred to it as The ultimate Drupal to WordPress migration checklist but in reality, it’s more of a working document that’s continually refined. The checklist is currently organised into three main areas that often concern my clients: understanding their migration requirements, auditing the existing Drupal site and addressing any SEO impact of the migration.

Migration requirements

These migration requirements will help you estimate a budget for your project.

  • List the Drupal content types to export as WordPress pages
  • List the Drupal content types to export as WordPress posts
  • List the Drupal content types to export as WordPress custom content types
  • Will custom content type development be needed?
  • List the content types that will be merged (if any)
  • Do you plan to re-organize your categories and tags?
  • List of terms to export as WordPress categories (remaining will be exported as tags)
  • Do you want to migrate comments?
  • Do you want to migrate Drupal users?
  • What will be your WordPress default category?
  • How do you want to handle the Drupal legacy file directory?
  • Are there any content sources outside of the Drupal database? (For example, static HTML files or external databases.)
  • What will be your WordPress permalink structure?
  • How do you plan to handle URL redirects?
  • Do you expect any data cleaning to be necessary?
  • Do you want me to install and configure WordPress on your server?
  • Do you want me to import the migrated database to your live server?
  • If any problems occur with your hosting provider during the migration, do you need me to troubleshoot?
  • Will you be redesigning your site or do you plan to convert your existing Drupal theme to WordPress?
  • If you plan to redesign your site, will you be using a ready-made theme or custom theme?
  • Who will be responsible for developing and configuring your WordPress theme?
  • Do you need to merge multiple domains or sub-domains into a single WordPress installation?
  • Do you need to merge content and configuration from an existing WordPress installation? (This may be necessary if you have already started developing the WordPress site prior to content migration.)
  • Is there an e-commerce component to the migration?
  • What are your SEO requirements? (We may need to complete the separate SEO To Do list.)

Drupal content audit

Understanding as much as possible about your Drupal installation will help you come up with a more precise estimate for your migration project. The content audit may take some time to complete but the process will give you a better idea of how much work will be needed to migrate your site.

  • Have you created a site map of your Drupal site?
  • What is the approximate number of Drupal nodes to migrate into WordPress. The number of Drupal nodes does not usually play a big factor in the complexity of the migration. However, it will still be useful to get an idea of the number since many nodes can have an impact on how long it takes to troubleshoot migration problems.
  • Please list the Drupal content types to migrate into WordPress. Additional migration MySQL queries will be needed for each Drupal custom content type. WordPress supports page and post content types as standard. Additional development work will be needed to support other content types.
  • Please list your Drupal custom fields. As with custom content types, custom fields in your Drupal installation will need additional work to support them under WordPress. We will need to specify how the field content is stored in WordPress, for example, by setting post meta key strings or custom tables.
  • Please list your Drupal modules and site functionality. Can the functionality can be handled with existing WordPress plugins? Will you need to develop custom plugins?
    Do you have blocks, views and panes with important content? Many Drupal sites display content in this way. Your SEO may be affected if you receive lots of traffic to pages with blocks, views and panes.
  • Have you installed Drupal modules that generate metatag information contributing to your SEO?
  • Do you have on-page optimization coded within the Drupal theme templates that we need to preserve? This will be important for SEO. Usually, on-page optimization embedded into the content body will be preserved during a migration.
  • Please briefly describe what to do with multiple aliases. Drupal supports multiple URL aliases for nodes. These will need to be resolved when migrating to WordPress. How we approach this will have an impact on your SEO.
  • Are there URL structures in Drupal that you need to preserve for SEO?
  • Are any Drupal taxonomies particularly important? Some sites have taxonomy listings that attract valuable traffic so this may be important for SEO. Note that unlike Drupal which allows for multiple vocabularies, WordPress only offers one set of categories and tags out of the box. Replicating your Drupal taxonomy listings in WordPress may need additional development.
  • Please briefly describe what to do with duplicate terms. Duplicate Drupal terms can cause problems during a migration.
  • Please briefly describe what to do with problem terms. For example, WordPress has a 200 character limit for terms. Any Drupal terms longer than 200 characters will need to be truncated. This may impact SEO if you receive lots of traffic from term indexes.
  • How many users do you have? The number of users doesn’t play a big factor during a migration but it may be useful to know. On some sites, users have associated pages that may be important for SEO.
  • Please list and brief description of user roles. Your Drupal user roles may need to be converted into WordPress roles.

SEO

These are tasks for projects where SEO is a major consideration. If SEO is critical to your site, you should hire your own dedicated SEO consultant.

  • Perform a pre-migration SEO audit
  • How will changes to menu navigation affect SEO?
  • How will changes to breadcrumb navigation affect SEO?
  • How will changes to site hierarchy affect SEO?
  • Crawl Drupal site to build database of URLs
  • Crawl WordPress site and compare counts with results from Drupal
  • Build database of authoritative content URLs and ensure these remain accessible after migration (e.g. via redirect if necessary)
  • Ensure changes to WordPress theme template will not adversely affect authoritative content
  • Identify how dynamically generated and statically set URLs will change (for example Drupal node IDs vs WordPress post IDs; Drupal URL aliases vs WordPress permalinks/post names)
  • Build list of changed URLs for redirection
  • Review title and meta description tags
  • Migrate title and meta description tags to SEO plugin e.g. Yoast
  • Identify top keywords and how they will be implemented in WordPress (e.g. do we manually set Yoast focus keyword for posts?)
  • Add Open Graph social meta data (for example via Yoast plugin)
  • Ensure theme is responsive for ‘mobile-friendliness’
  • Install redirection plugin (or implement via htaccess)
  • Install XML sitemap WordPress plugin
  • Install schema markup (rich snippet) WordPress plugin
  • Review WordPress robots.txt file
  • Check legacy Drupal site links to ensure WordPress redirects work correctly
  • Assess how page speed will affect SEO (anecdotal evidence says that page speed improves after a move to WordPress but verification is necessary)
  • Ensure live WordPress site is not set to noindex
  • Ensure correct timezone is set in WordPress
  • Perform a post-migration SEO audit