Ultimate Guide: Migrate From Drupal 7 To Drupal 9

August 24, 2020 | 7 Minute Read

Tags:Drupal 9,Migrations,Drupal

The Open Source CMS is approaching its 20th birthday and it has evolved in incredible ways.

Back in 2015, when Drupal 8 was introduced, it was not an easy upgrade. The migration process was as draining as building a site from scratch, and then bringing the content in was another time-consuming process. And this problem statement summarizes the concerns of developers and businesses with the launch of Drupal 9. 

To the relief of many, the Drupal 9 release is smooth, uncomplicated, and (thankfully) unexciting. It will be a different experience for the Drupal community, with a paradigm shift of the updates being stable with a manageable development process. However, if the upgrade is an easier experience, then what’s the hype? What’s good about Drupal 9? 

Let’s find out! 

What is Drupal 9?

Drupal 9 is nothing but the absence of deprecated code in the Drupal 8.9 version. It is identical to Drupal 8.9 for everyone–editors, site builders, and developers and Drupal 8.8.0 will be the last release to deprecate for Drupal 9. Built with an API-first development approach, Drupal 9 boosts structural tools that can define editorial workflows. Though, it is only about time for the users to give us honest feedback. 

Why was the code deprecated? 

Did it seem obvious to deprecate the code while Drupal 9 was WIP? Maybe. But it had its reasons that reaped as benefits to the onlookers of Drupal 9, like:  

  • Deploying the code within the Drupal 8 version helped working out the issues even before the release of Drupal 9. 
  • It didn’t require refactoring like the previous versions that had an entirely reworked API.
  • And of course, the migration process will not become a bump in the road for sites still in varying versions of Drupal. 

Why upgrade to Drupal 9?

The bigger questions are: ‘Is it time to give Drupal another look?’ and ‘How urgent is this migration for you?’

Drupal 8.9, the final version of Drupal 8, will receive bug fixes and security coverage only until November 2021. Whereas, the development and security updates of Drupal 9 will go much beyond that timeline. 

This means you can be content with updating your site with Drupal 8.9 until the end of 2021. 

Drupal 9 is for sites wanting forward compatibility with later releases. Also, as per the update, not all Drupal 8 code will run on Drupal 9. 

Apart from these considerations, for businesses eyeing migrating to Drupal 9 from WordPress or other CMSs, it is an excellent opportunity to tap the features of Drupal 9 now! 

How to prepare for Drupal 9 Upgrade?

Primarily, check the status of your favorite contributed modules if they are Drupal 9 compatible or not because eventually, you would want your site to be migrated to Drupal 9.

For more, below is the checklist to begin with the upgrade process.

Drupal 9 Update Checklist

Before you jump into the migration process, here’s a checklist of things that should be in place to help you update quicker:

  • Ensure your site is up to the latest minor version, i.e., Drupal 8.9. Upgrades are not supported beyond Drupal 8.8.
  • Upgrade to the newest PHP requirements, i.e., PHP 7.3+ 
  • Deprecate code on your site and fix it if required with the help of the Upgrade Status module.
  • Check whether your site is based on Composer or tarballs, this will decide the actual upgrade flow.

Tools & Modules For Upgrading

If you’re ready to start moving in the right direction, here’s the list of tools and modules that will aid you along the way: 

How does this affect my site? 

Like the above list indicates, the migration for Drupal 7 and Drupal 8 versions will be different. Therefore, the next big aspect is, how distinguished will it be? What will it mean for sites at different versions of Drupal? Let’s decode it individually:

If your site is in Drupal 8

Drupal 8 to 9 migration is more like upgrading the minor versions of Drupal 8. You can give it a pause and skip all the upgrade hassle for now if your site is at Drupal 8.9 version. 

There are a few permissions and modules marked as not supported for Drupal 8.9 and they require Drupal 9 upgrade.

Therefore, it is for you to check if your favorite contributed modules and features are supported or not. For example, Module Filter for Dev release is compatible with Drupal 8.9, but the stable release of the module isn’t. 

To know more about upgrading your Drupal 8 site with details check out this video

If your site is in Drupal 7

In case you are a long term owner of a Drupal 7 site, migration can be a daunting thought. But here’s a sign of relief: given the COVID-19 across the world, community support for Drupal 7 will be available till November 2022. 

For a simple site, the Migrate Drupal module could help, but moving the "theme" over will require custom development. You can check here for details. 

Moreover, you can hinge on Drupal 7 Long Term Support (it is a short term and less secured fix and we don’t recommend it). 

The migration journey from Drupal 7 to Drupal 9 will be discrete for each site. It might not be a simple one if you own a more complex site and this is where we can help. Even for site owners looking for a new CMS, Drupal 9 can be your considerate choice.

Business Value

Regardless of being on D7 or D8, you can start preparing to upgrade your Drupal site as soon as possible. 

Drupal 7 was launched nine years ago and this is the perfect time for some reassessment of the needs of content editors and site users. It is also important to evaluate business continuity aspects of maintaining the software and updating your systems. 

 These questions might help you address how the migration can serve today's audience in a better way: 

  • How relevant and secure are your existing features and modules? 
  • What’s the scope of migration for you, how much time and budget can you assign, and what developer skill set at hand do you possess? 
  • What will be the impact of design and architecture after the upgrade on the content on the existing site? 

With these questions to answer and a migration journey to undertake, you might need experts in your corner and partners who can extend a helping hand

Expected Drupal 9.1 Features

Though Drupal 9 was launched a month back, the process of updating dependencies and removing deprecated code will continue for the next few months. And nothing new is expected to come out until the Drupal 9.1 version gets released. 

According to the community, Drupal 9 needs a new default frontend theme. And a new, modern, clean frontend theme, Olivero is being built in the contributed project for inclusion in Drupal core. Therefore, we can expect Olivero to be added as an experimental theme in the impending update. 

Drupal 9.1.0 will be released by the end of 2020. It will introduce new deprecations and features that will pave the way for Drupal 10 since it is expected to be built within Drupal 9.

Interesting Final Notes

  • The Drupal 7's end-of-life is now postponed to November 28, 2022. However, the Drupal Security Team will continue to follow the Security Team processes for Drupal 7 core and contributed projects.
  • Also, Drupal 8 will still have end-of-life on November 2, 2021, due to Symfony 3's end of life.
  • Migrating directly from Drupal 7 to Drupal 9 can now be supported with the core Migrate module.

Also Read

Question: Should I upgrade to Drupal 9 from Drupal 7? 
When to Upgrade from Drupal 8 to Drupal 9
Updating Drupal 8 Modules to Drupal 9
The Long Road to Drupal 9