Upgrading your Drupal 7 website to Drupal 9
Posted by Ben Mawhinney
3 minute read
Drupal 7 reaches it’s official End-of-Life on November 28, 2021.
But what does that mean for the average Drupal 7 Webmaster?
First of all, it’s important to understand that ALL IS NOT LOST.
There are a couple of different routes you can choose to take if you’re going to be affected by this.
1. Do nothing.
2. Upgrade to Drupal 9
3. Look at moving your content to another CMS, like WordPress.
4. Create a static site and get rid of Drupal altogether.
Each of these routes involve different amounts of complexity, development resource and expertise. We’ll look at them in more detail below.
The Do Nothing Option
If your website is small, and doesn’t get a huge amount of traffic then this is probably your best option. Your site will still work so long as your hosting provider maintains your server. What you need to be aware of are certain vulnerabilities that may creep into the system. The core and it’s modules will no longer be receiving updates or security patches. This would be of particular concern if you’re holding any personal data about your customers – a data breach could be at best inconvenient, at worst it could mean the end of your business. You might also find that the site starts to degrade as certain modules are no longer supported. Some websites might fail gracefully over time, but most just end up locking you out of your admin panel or corrupting your data and failing completely.
Upgrade from Drupal 7 to Drupal 9
Once upon a time, back in 2015, your best option at the time would have been to upgrade from Drupal 7 to Drupal 8. Then, when Drupal 9 was released in 2020 it was supposed to be a relatively straightforward upgrade process from 8 to 9. Now that Drupal 8 support is reaching the end of it’s life, it’s an extra step that we could do without, so most people recommend going straight from 7 to 9. The problems that we’ve seen are where certain elements of the site won’t automatically migrate – so you’ll need to come up with a back up plan for how you might need to recover some of the data.
The port everything to another CMS option
This might be a good option for you to consider in certain circumstances. For example, there are plugins for WordPress that can import data from the Drupal database, but again, your biggest problem is trying to match up different data types that may not have an equivalent in your new Content Management System. Again, all of this depends on the complexity of your site and what you’re trying to do with it. If you’re running a blog, and you’ve got comments from users then that should be relatively straightforward to replicate all of the User accounts and migrate their comments. You start to run into problems when you’ve got custom fields that don’t map automatically to the new data structure. This shouldn’t be a problem for an experienced development team, but if you’re trying to do it yourself this might be the point at which you call in the experts.
Create a Static Site (or use a Headless CMS) and get rid of Drupal altogether
Now, this might seem a little counterintuitive, especially coming from a Drupal web developer, but this might be the best option if your website is reaching it’s own end of life. Static sites can be cheaper to run, they can be faster to render and they can provide a better user experience, but again, this all depends on the exact set of circumstances you find yourself in. Strapi is an open-source, headless CMS that abstracts your data away from the traditional ‘monolithic’ configuration of a traditional Content Management system and serves up data to the end-user via an API. This makes it a great choice if you want to consume your content in more that one format – i.e. you might want one data source to run an e-commerce application and an iOS application.
Hopefully, that will give you a better understanding of some of the options that are open to you. Drupal themselves are offering extended support via their network of vendors from November 2022 until November 2025, which will buy you more time, but it could come with considerable ongoing maintenance costs.