Today we're adding six more tutorials to our Drupal 8 Migration Guide. So far, our guide has done a great job of covering what migrations are, introducing the diverse landscape of core and contributed modules, helping you to plan and prepare for a migration, and using the tools provided to perform a Drupal-to-Drupal migration. And much more.
Now we're diving into writing custom migrations! This weeks tutorials contain critical concepts for anyone wanting to write a custom migration from any data source. We'll cover what source, process, and destination plugins are, and the role that each plays in the migration process.
And for those of you that like to write code we'll roll up our sleeves and take a look at writing a custom source plugin. One that's capable of extracting data from a MySQL database and exposing it to the Drupal migrate API so that it can be imported. And while our example is MySQL specific, it should help to shed some light on how you could go about writing a source plugin for just about any data that PHP can read.
We'll also look at what's involved with writing a custom process plugin allowing us to use our own application specific logic to manipulate the data we're importing during the migration itself. After completing this tutorial you should have a good idea of what process plugins are already available to use, and have some good copy/paste ready examples to get you started writing your own.
- Set up Migrate Demo Site and Source Data
- Source Plugins
- Write a Custom Source Plugin
- Process Plugins
- Write a Custom Process Plugin
- Destination Plugins
We know that these tutorial don't represent everything you'll need to know to write a custom migration. However, we would rather publish them so you can start learning now and follow up with additional information as quick as we can write it. In the coming weeks we'll be adding helpful videos to some of the above tutorials as well as continuing to publish additional migration related tutorials covering: running migrations with Drush, writing custom migration YAML files, handling files in a migration, dealing with stub migrations, and more.
This is part of our ongoing work to make this guide the number one resource for information about Drupal 8 migrations. If you've got any ideas about other things you would like to see included in this guide let us know!