Skip to main content
Drupal is a registered trademark of Dries Buytaert
Release: OpenID Connect / OAuth client 3.0.0-alpha9 New alpha version released for module openid_connect (3.0.0-alpha9). Release: Opensolr Search 4.5.0 Minor update available for module opensolr_search (4.5.0). Release: Timelinr 1.0.1 Minor update available for module timelinr (1.0.1). Usage Milestone: Simplify Module simplify crossed 10,000 active installs. Usage Milestone: Views Reference Filter Module entityreference_filter crossed 10,000 active installs. Usage Milestone: Dropdown Language Module dropdown_language crossed 10,000 active installs. Usage Milestone: Paragraphs Browser Module paragraphs_browser crossed 10,000 active installs. Usage Milestone: OpenAPI Module openapi crossed 10,000 active installs. Usage Milestone: Decoupled Router Module decoupled_router crossed 10,000 active installs. Module Revived: Entityqueue Buttons 1.1.2 Module entityqueue_buttons updated after 8 months of inactivity (1.1.2).

Wordpress to Drupal Migrate

16 sites No security coverage Drupal 10–11
View on drupal.org

This module allows you to migrate content directly from a WordPress database into Drupal. It imports users, posts, pages, categories, tags, media, and comments, offering an easy-to-use admin interface for configuration and execution.

Introduction / Summary

Summary

Migrate WordPress content to Drupal via direct database connection. Import users, posts, pages, categories, tags, media, and comments with an easy-to-use admin UI.

Full Introduction

Moving from WordPress to Drupal? This module provides a streamlined migration path by connecting directly to your WordPress MySQL database.
Instead of dealing with XML exports or manual content transfers, WordPress to Drupal Migrate reads your WordPress data in real-time and creates equivalent Drupal entities - users, nodes, taxonomy terms, media, and comments.

Perfect for site builders who need to migrate an existing WordPress site to Drupal without losing content or spending hours on manual data entry.

Features

  • Direct Database Connection:
    Connects directly to your WordPress MySQL database - no XML exports needed. Fast, reliable, and handles large sites efficiently.
  • Comprehensive Content Migration:
    • Users (including first name, last name, and bio metadata)
    • Categories → Drupal taxonomy terms (hierarchical structure preserved)
    • Tags → Drupal taxonomy terms
    • Posts → Article content type
    • Pages → Basic Page content type
    • Media / Attachments → Drupal Media entities
    • Comments (threaded comment structure maintained)
  • User-Friendly Admin Interface:
    Configure database credentials and run migrations from the Drupal admin UI- no command line required.
  • Flexible Migration Options:
    • Skip media migration when not needed or if files are unavailable
    • Update existing records to re-sync content
    • Rollback migrations to undo imports
  • WordPress Content Cleanup:
    Automatically converts common WordPress shortcodes to HTML and cleans up WordPress-specific markup.
  • Drush Support: Full Drush integration for advanced users and automated workflows.
  • Extensible: Easily add custom migrations for WordPress custom post types and custom taxonomies.

Use Cases

  • Migrating a corporate WordPress site to Drupal for better enterprise features
  • Moving a WordPress blog to Drupal to leverage its content modeling capabilities
  • Consolidating multiple WordPress sites into a single Drupal multisite installation
  • Agencies transitioning client sites from WordPress to Drupal

Post-Installation

After enabling the module:

  1. Configure Database Connection:

    Navigate to Configuration → Content authoring → WordPress Migration
    (/admin/config/content/wp-migrate) and enter:
    • Database host, port, name, username, and password
    • WordPress table prefix (default: wp_)
    • WordPress uploads URL (for media migration)
  2. Test Connection:
    Click Test Connection to verify Drupal can reach your WordPress database.
  3. Run Migrations:
    Go to Configuration → Content authoring → WordPress Migration → Execute Migrations
    (/admin/config/content/wp-migrate/execute).
    Select specific migrations or use Import All.
  4. Review Content:
    Verify imported content under Content, Media, People, and Taxonomy.

Note: The module creates two taxonomy vocabularies (Categories and Tags) during installation to match WordPress’s default taxonomy structure.

Additional Requirements

  • Drupal 10 or 11
  • PHP 8.1+
  • migrate_plus – Additional migration plugins and features
  • migrate_tools – Drush commands for migration management
  • MySQL access to your WordPress database (Drupal must be able to connect to it)

Recommended Modules / Libraries

  • migrate_upgrade
    – Useful if migrating from an older Drupal version alongside WordPress
  • media_migration
    – For advanced media handling scenarios
  • pathauto
    – Automatically generate URL aliases for migrated content

Similar Projects

  • wordpress_migrate
    – Imports WordPress content via WXR (XML) exports. Use this if direct database access is not possible.
    This module differs by using a live database connection, which is faster for large sites.
  • feeds
    – Imports content from RSS/Atom feeds. Useful for syndication but less comprehensive than a full migration.

Supporting This Module

If this module saves you time, consider:

  • Contributing bug reports and patches
  • Writing documentation or tutorials
  • Sponsoring development of new features

Depends on

Dependencies of the latest stable release

  • Migrate Plus
  • Migrate Tools
  • comment Drupal core
  • media Drupal core
  • menu_link_content Drupal core
  • migrate Drupal core
  • taxonomy Drupal core

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
6
Tracked since
Feb 2026
Latest release
5 months ago
Releases (12 mo)
6 ▲ from 0
Maintenance
Active

Release Timeline

Releases

Version Type Core Release date
1.1.3 Stable 10–11 Mar 20, 2026
1.1.2 Stable 10–11 Mar 20, 2026
1.1.1 Stable 10–11 Mar 20, 2026
1.1.0 Stable 10–11 Mar 20, 2026
1.0.1 Stable 10–11 Mar 20, 2026
1.0.0 Stable 10–11 Feb 4, 2026