I just migrated my WordPress to Drupal 9 and it was not easy that’s what I can say.. Because I had installed multiples modules and many were not compatible when I installed them for the first time.
Here is the list of modules that need to be installed. Make sure you have installed Drupal 9 compatible modules.
Other thing you need to have installed is DRUSH.
- WordPress Migrate
- Mitrage Tools
- Migrate Manifest
- Migrate Plus
After installing these modules; you should have these modules available to be enabled. Go ahead and enable all of them.
Export WordPress Content
Login to your WP admin and under Tools click export and check the file size of exported content from WordPress. If it is more than 2MB then you need to increase upload max size in php.in file. By default it is 2MB. I had to make it 8MB.
Restart your server, clear cache and reload Drupal.
Add Vocabulary “Categories” to Drupal
Add vocabulary “Categories” to Drupal if you want to import all the Categories from WordPress.
Click Migrations Under Structures
Click migrations under structures and then click ‘Import from WordPress’
Select your WordPress exported content file and hit NEXT..
Increase upload max size
Increase upload max size in php.in file, if WordPress file size is more than 2MB.
Select Vocabularies for Tags and Categories
Select Content Types (Articles and Basic Pages)
If you had custom content type in WordPress; you should create extra content types in Drupal as well. And import them appropriately.
Select Format Type for Each Content Type
I have selected Full HTML for both Articles and Basic Pages
Rename Generated Migration Group
I left this as it as and hit Finish
Drupal Imported All WordPress Content
You should see something like this. If everything went right.
Now, you can start executing the import; I started with pages, tags, categories, posts and lastly comments.
Migration in Progess
Last Migration Execution for Comments
Check All Imported Items
After executing all the migrations; you should see something like this.
If something goes wrong on the execution page, simply RESET it execute the import again.