Upgrade from Drupal 7 to Drupal 9

Drupal 7 to 9 upgrade

Upgrade from Drupal 7 to Drupal 9

Drupal 7, the vastly popular web content management system that powers many top-rated websites, is ending. Initially, the Drupal Association planned to pull the plug last year, but COVID caused the deadline to be pushed back.  Right now, the Drupal 7 end of life is scheduled for November 28, 2022.   Additionally, Drupal 8 will still be end-of-life on November 2, 2021, due to Symfony 3’s end of life. However, since the upgrade path from Drupal 8 to Drupal 9 is much easier, we don’t anticipate the same impact on end-users.

Jumping Two Drupal Versions? Yes!

It looks like a tall order. You’ve been working with version 7 and even Drupal 8, and now the clock is ticking again for the Drupal 7 end of life. The good news is that you still have some time. But do not take too long because most Drupal web development agencies are in high demand. In a perfect world, you already have a relationship with the Drupal agency that built your original site and they can help put together an upgrade path to version 9. For those organizations that do not have an active partnership, there are options. 

One option you have is to migrate to Drupal 8, even though it’s on its way out. Depending on your development needs, there are modules that migrate seamlessly from 7 to 8, but might not so easily move from 7 to 9. Although it seems like more trouble than it’s worth to take that intermittent step, it is far more intuitive.

The intention of the Drupal core developers is to make core version upgrades seamless for versions 9 to 10 and so on. That’ll be a big relief to people who worry about what will come next.

Understanding the Module Changes

Some users have discovered that switching from 7 to 8 can bring significant changes. For example, some contributed modules are actually part of 8’s core, which is nice. On the other hand, implementation is different, which affects feature parity. Refactoring is the best way of dealing with this issue if it comes up.

Nuts and Bolts of the Database Upgrade

The best way is to migrate your site’s content and its configuration to version 8. Select and empty version 8 installation. You can now build the site by hand, which means that you determine the placement of content types and fields. With this framework in place, you simply migrate the version 7 content into the waiting spots.

If you have a site that has a fairly standard presentation, there’s a good chance that you can use the core functionalities of version 8 to automatically migrate most of the fields. That said, automation won’t be available if your site has custom code or features contributed modules. Experts find that Migrate Plus is a good module set for starting a custom-heavy migration.

Obviously, you need to do some organizational backend work first. We recommend generating a database-informed spreadsheet that lets you plan how to schedule the move. When you have third parties handling the actual migration, they can keep track of progress on the spreadsheet. If they end up having to code to a YAML file, have them document their progress.

Enjoy the New Tools (Briefly)

You won’t spend a lot of time on version 8. Even so, take a look at Composer, which now takes the place of Drush. Twig is the new templating engine that makes you wonder how you ever got along with PHPTemplate. Now is also the time to embrace the gradual deprecation model.

It’s not something Drupal web development has used so far. If you do manage to embrace this particular aspect of the changes, you are going to do very well moving on from version 8 to 9.

Making the Drupal 9 Upgrade from Version 7

So, you’ve decided that you don’t need the version 8 training wheels and want to go straight from Drupal 7 to 9. Don’t forget that some steps will be similar to the 7 to 8 migration. For example, you should plan the migration and take stock of the platform requirements including module compatibility.  There are several automated tools to find and fix deprecations in your codebase.  A great resource can be found on Drupal.org for how to prepare your Drupal 7 to Drupal 9 

Now is the right time to start the migration process. Don’t wait until the Drupal agency stops security support of the platform. Also, depending on the complexity of your site, it can take six to nine months to do a full redesign or re-theming to version 9 along with the migration.

Making a Plan for the Migration

What does your budget for this project look like? How much time can you allot to it? These considerations will tell you whether you should do a basic migration of existing content or an overhaul of information architecture complete with design and features. If you’ve been thinking of a design refresh or corporate rebranding, this is an excellent time to do it.

On the other hand, if it is critical that you get the site up and running, this isn’t the time to explore major upgrades. Even so, consider keeping a running list of desirable upgrades that could become part of another site upgrade project some time down the road.

Don’t overlook these questions. While you might be excited just to get started, there’s the danger that you’ll try to go in too many directions at the same time. If the money dries up, you’ll find that parts of the migrated site work beautifully, while others may be rushed and not functioning as well as they could. Make it easy on yourself and your staff and put together a baseline plan to which you can always add.

Avoid Upgrade Fatigue

Version 7 of Drupal has been around since 2011. If you’re working with a website developer who’s been on board since then, there’s a good chance that they’ll have some upgrade fatigue. They’ve become accustomed to working Drupal a certain way, and there might now be some resistance to making the move.

Unless your developers are on top of their game and have already undergone some training, factor in the learning curve. While there’s a good chance that they will leap at the change to use Composer for managing dependencies, there’s the Symfony platform that forces them to change their ways of creating a process. Also, hooks are a thing of the past while the YAML files are now the ways to make menu items.

Bringing in an Outside Firm to Do the Heavy Lifting

Unless you have experienced Drupal Developers in house, the time and money to spend on staff retraining, consider bringing in a third party or outside Drupal development firm. You can save the money at the onset of the project. Rather than tying your internal resources, learning curve, you work with experts in the field who will handle the migration quickly and competently. When speed is of the essence, this is most likely the best way to go.

In a perfect setting, you’ll hire a firm that works alongside your team and teaches them the ropes as they go. With the tasks clearly defined, there won’t be struggles about who’s in charge. Instead, you might have found a way to greatly reduce the learning curve of your staff members while taking advantage of having informal training become part of the project.

Additional Drupal 7 to 8 to 9 documentation and resources

Helpful upgrade documentation can be found on Drupal Association website and we listed them here for quick access:

Get in touch with us should you need help with a Drupal upgrade project or if you are migrating from Drupal to WordPress.  Contact us today.

For Drupal hosting, we also recommend our Drupal hosting partner https://pantheon.io.

Featured image source: https://pantheon.io/




Related Insights

Start a Project

Want to Skip Right
to the Good Stuff?

Contact Us