Drupal 10 was released in December 2022. If you're a current Drupal 9 user, you may be strategizing your website's Drupal 9 to 10 migration. Luckily, the Drupal 9 to 10 migration is being heralded as the easiest upgrade in Drupal's history. That's because Drupal 10 is backward-compatible with Drupal 9 and is not a major overhaul of the core system. But the planning and development process still requires time and attention to ensure the migration goes smoothly.
This article takes a deep dive into the Drupal migration process and how your organization's marketing team can provide support along the way.
Fast facts about the Drupal 9 to 10 migration
Brush up on your Drupal release history with these fast facts:
- Drupal 9 was released in June 2020. At the time of its release, Drupal 9 offered an easier upgrade than ever because it built upon features released for Drupal 8.
- Support for Drupal 9 ends in November 2023. There won't be many new security releases after this time, and no new functionality will be added.
- Drupal 10 was released on December 14, 2022. New features will only be added to Drupal 10 from now on, so if you're looking to use Drupal for the first time, it's recommended to start with Drupal 10.
What's new in Drupal 10?
As mentioned, Drupal 10 builds on innovations released as part of Drupal 9. You won't encounter an entirely new structure and system to get used to when switching to Drupal 10.
That being said, Drupal 10 offers the following updated features to improve the user experience:
- A new default administrative theme and frontend theme: The default Claro administration theme and the Olivero frontend theme offer an accessible, user-friendly, modern experience for website administrators and visitors alike.
- Updates to the CKEditor embedded text editor from V4 to V5: This change facilitates a more modern editing experience and more intuitive authoring.
- Upgrade from the PHP framework Symfony 4 to Symfony 6: Symfony 6 and switching to PHP 8.1 as the minimum version results in a more secure, performant PHP framework.
Specific technologies aside, Drupal 10 focuses on accessibility, modernization, and user-friendliness for website visitors and editors alike.
Steps to upgrade from Drupal 9 to 10
If you upgraded your site from Drupal 7 to 9 in the past, you know that migration required transferring all of your data to a new Drupal 9 website. The Drupal 9 to 10 migration is similar to the upgrade from Drupal 8 to 9, so it won't be such a significant undertaking.
However, you can still take a few measures to set your website up for success. Follow these steps to prepare your Drupal 9 site for the migration:
- Drupal version: Upgrade to at least Drupal 9.4.4 or later. Core updates made before 9.4 have been eliminated, so you must be on at least Drupal 9.4.4 to use the data upgrade path from CKEditor 4 to CKEditor 5.
- Rector: Run Drupal Rector on custom modules and themes. Drupal Rector scans code to look for deprecated functions and helps guide developers to upgrade them.
- CKEditor: Upgrade to CKEditor 5. CKEditor 4 reaches its end-of-life at the end of 2023. Check out Drupal's step-by-step instructions for upgrading to CKEditor 5 to stay up to date.
- PHP: Check your version of PHP. Drupal 10 requires PHP 8.1 or higher, so you may need to update your PHP code. Log into your website's hosting account and check the settings in your control panel to verify which version of PHP you're using.
- Modules and themes: Check your modules and themes. Not all modules and themes from Drupal 9 will be compatible with Drupal 10. If your site uses a module or theme that was removed from Drupal core, download the contributed project version before migrating to Drupal 10.
- Test: Update to Drupal 10 and test your site. Run automated code tests using tools like Drupal Rector or PHPStan. Also, conduct manual testing to ensure that everything is working as expected. Check your forms, links, page navigation, and other site elements to note any user-experience issues.
Ideally, upgrading your website from Drupal 9 to 10 shouldn't be a hassle. You can make the already simple process even easier with the tips I've provided. You can take these steps yourself, let your web developer handle it, or work with an external Drupal developer.
This article was adapted from a previous article by Jim Birch, Drupal engineering manager at Kanopi Studios.