Whether you're "constrained" to migrate content to Drupal 8 or you're just eager to jump on the Drupal 8 bandwagon and harness its much-talked-about advanced features, the most important “warning/advice” to keep in mind is:
Don't migrate mindlessly!
Meaning that before you even get to the point of:
- triggering the Migrate module's capabilities and adjusting them to your migration project's needs and requirements
- selecting and combining all the needed contrib modules
- writing down your YAML files for carrying out your content migration process
You'll need to think through every little aspect involved in/impacted by this process:
- your goals
- your growth plan
- your current site visitors' complaints and suggestions
That being said, here's more of a “backbone” or summary of the migration workflow, one that highlights the:
- main phases to go through
- the right approach to the whole process
- Drupal-specific concepts and tools to use
Do NOT expect a very detailed, highly technical tutorial, though!
As for the Drupal concepts that you'll need to be already (more than) familiarized with once you launch your migration process, maybe you want to have a look at this guide here, on Understanding Drupal
And now, let's delve in:
1. The Migration Workflow: 4 Key Phases to Consider
Here's the entire process in 4 steps (so you know what to expect):
- first, you'll need to migrate your data into the destination nodes, files and paragraphs on the newly built Drupal 8 site
- then you'll migrate data into date, image, taxonomy, address fields and file
- next, you'll move your precious data from JSON and CVS files
- and finally, you'll complete your migrations from the UI and the terminal
2. Are You Upgrading from Drupal 6 or 7 or Migrating From a Different System?
And here's what to expect depending on your answer to the above question:
- if you migrate content to Drupal 8 from an older version of Drupal (6 or 7), then you're quite “spoiled”: a lot of hard work has been done, by the Drupal community, for turning this migration process into the official path to Drupal 8; you could say that the solid framework has already been set up, so all there's left for you to do is to... take advantage of it!
- if it's from a whole different system that you're migrating your site (let's say WordPress or maybe Joomla), then... expect it to be a bit more challenging. Not impossible, yet more complex
3. Plan Everything in Detail: Think Everything Through!
Now with the risk of sounding awfully annoying and repetitive, I feel like stressing this out:
Don't migrate... mindlessly!
Plan everything in the smallest detail. Re-evaluate the content on your current site and its “load” of features.
Take the time to define your clear goals and to put together your growth plan (if there's any).
Then, do lend ear to what your current site visitors have to say, filter through all their complaints and suggestions and tailor your final decisions accordingly.
It's only then that you can go ahead and set up your content architecture.
4. Start With the Structure: Build Your Drupal 8 Site First
“But I haven't picked a theme yet!” you might be thinking.
No need to! Not at this stage of the migration process.
You can still build your Drupal 8, from the ground up, even without a theme ready to be used. You can add it later on, once you have the final version of your content!
But the site itself, its solid structure, this is a “must do”. It's the very foundation of all your next operations included in your migration workflow!
5. Deep Clean & Declutter! Take Time to Audit Your Content
Don't underrate this very step! For moving over all that clutter, that heavy load of unused, outdated features and all those chaotic, crummy pages will only impact your Drupal 8 site's performance from the start.
So, now it's the right time to do some... deep cleaning!
Audit your content, your features, plugins and other functionalities included in your site's infrastructure and... trim it down by:
- relevance (are you using it?)
- quality: keyword-stuffed, unstructured pages (a heavy pile of them) will surely not give your new Drupal 8 site any significant jumpstart in rankings!
6. About the Migration Module Included in Drupal 8 Core
Using this dedicated module in Drupal core to migrate content to Drupal 8 comes down to implementing the:
Extract- Transform-Load process
Or simply: ETL.
In Drupal — as related to the Drupal migrate module — these 3 operations come under different names:
- the source plugin stands for “extract”
- the process plugin stands for “transform”
- the destination plugin stands for “load”
7. Time to... Migrate Content to Drupal 8 Now!
Now it's time to put some order into that “pile” of content of yours! To neatly structure Google Sheets, XML files, CVS files etc.
And here's the whole “structuring process” summed up to the 3 above-mentioned plugins: source, process and destination.
- XML file
- SQL database
- Google Sheet
- CVS file
- JSON file
And here's a specific example of how to “glue” data for a neater and ideally structured content architecture:
Before the migration:
- A: First Name- Kevin
- B: Last Name: Thomson
- C: Department- Commerce
- A: Name- Kevin Thomson
- B: Department- Commerce
8. 4 Contrib Modules to Incorporate Into Your Migration Workflow
As already mentioned, the migrate content to Drupal 8 process also involves using a combination of contrib modules.
Speaking of which, allow me to get them listed here:
The END! This is the tutorial on how to migrate content to Drupal 8 trimmed down to its bare essentials.
To its core phases, key steps to take, main Drupal concepts to “joggle with”, right approach/mindset to adopt and best tools/modules to leverage for a smooth process!