All the Reasons to Upgrade to Drupal 9
Drupal 9 was released in June 3, 2020, and has continued the Drupal 8 trajectory which saw over 200 new features (and many more since). The new features offer benefits to all your website stakeholders. It provides a significantly better authoring environment, is much quicker to set up, and provides very nice improvements for site builders and developers. These improvements equate to a better visitor user experience.
With the release of Drupal 8.6.0, it is now easier than ever to migrate* a Drupal 6 or 7 site to Drupal 8 or 9. We were able to complete the majority of the migration of BYU’s multilingual Sophie site from Drupal 6 to the latest version of 9 after a few simple configuration steps. This helped drastically reduce the migration costs, as no code or complex configurations were required.
We also found we didn’t have to sacrifice any features or functionality when moving that site to Drupal 9. But if migration cost alone is not enough of a reason to migrate, we explore many other factors below to consider.
*Think of a migration as a Drupal upgrade where we create a brand new Drupal 9 site, then migrate the content, media, and other elements over automatically in most cases. The word upgrade and migrate are mostly used interchangeably in this blog.
Our new Drupal 9 Demo Site is Available to "Try Before you Buy"
We now have a fully-functional free hands-on live Drupal 9 demo site with several walk-through tutorials, and blogs and videos to help you learn all about core Drupal 9 modules.
A More Secure CMS
Drupal 9 has far more crucial built-in functionality than any prior version. This is crucial to website security because core modules have a much higher level of scrutiny than community contributed modules do. Being in core means passing a much stricter review process before being added, and with many more eyeballs on the code. Also, unlike some contributed modules, Drupal core updates are released regularly.
If you are still using Drupal 6, although critical security patches are still being offered through the long term support program, keep in mind substantially fewer people are working on 6. Have a look at this blog post for more information.
If security is a concern (and it should be), read Twelve Reasons Drupal 8 is More Secure than Ever.
The Authoring Experience You’ve Been Waiting For
One of the biggest complaints of content editors for Drupal 6 and 7, was the authoring experience was clunky, and time consuming. This issue could be exacerbated further if the site suffered from poor architecture decisions.
In fact, the user experience was not only made a core initiative, Acquia and the Drupal community came up with a persona for both content creators and site builders. That commitment to improving the ease of use paid off big time with a built-in WYSIWYG editor, and in-place quick editing of almost anything on the site. Typically, content editors shouldn’t need to understand HTML in order to add or edit the majority of a site’s content, and that has now been made possible with Drupal 9 out of box.
Also the administration UI has been streamlined and given a nice facelift. For content editors and site builders, Drupal 9 delivers the experience they’ve been waiting for.
Built-in Layout for Site Builders (think Wix or Squarespace)
Drupal 8.5 provided a huge boost for site authors called Layout Builder, which can be configured to provide the ability to dictate the page layout on a per page or per content type basis. It provides a flexible solution to create multiple layouts using a simple user interface (UI).
This new module can reduce or eliminate altogether the need to get a developer involved every time a new layout is needed. With Drupal 8, you can even achieve drag-and-drop layout while editing the page if the site was developed to support that workflow.
Read more about this game-changing feature here: Drupal 9 Layout Builder: Change a Page Layout without Hiring an Agency.
Test drive this feature free on our hands-on Drupal 9 demo and tutorial site.
Mobile First Responsive Baked In
Due to the Mobile Initiative, Drupal was the first major content management system (CMS) to be mobile friendly out-of-box. For example, the BYU Sophie site uses the Bartik theme shipped with Drupal 8, which also wound up saving significant time. In fact, we had planned a second phase to deliver a responsive design, but, thanks to the time we saved on the migration mentioned above, we were able to include the design in the first phase deliverable.
Drupal 9 ships with a nice administration theme that is also fully responsive, allowing content creators to add/edit content from their phone or tablet.
Learn all about Mobile First Responsive Improvements in Drupal 8.
Workspaces is an awesome new core module that ships with Drupal 8. Workspaces provides an Agile-like workflow for your content creation process. It’s meant to be used on a group of new pages, existing items like menus, and other content like tags, to be published all at once.
Workspaces allows for the creation of multiple environments (e.g. staging and production), and movement of content between the environments. You could designate production to be visible to site visitors, while staging would be the old equivalent of unpublished pages only visible to privileged users.
This eliminates the need to have a separate site just to stage content, or staging content on a production site with some convoluted workflow.
Learn more about the Drupal 9 Workspaces module here.
Broad Support for HTML5
Thanks to the HTML5 Initiative, Drupal 9 has built-in HTML5 support, bring the platform up to date with the latest trends in markup, and providing more compatibility with mobile and handheld devices. You can read more about the initiative here.
Improved Performance and Scalability
If you’re scratching your head wondering how Drupal 9, with so many advancements and improvements, could actually be faster than Drupal 6/7 meet BigPipe. BigPipe enhances performance by sending the cacheable parts of the page first, then the dynamic/uncacheable parts. Drupal 9 also requires PHP 7.x, which offers a modest performance improvements over PHP 5.x. Finally, Drupal 9 provides a built-in dynamic page cache for logged in users that caches pages minus the personalized parts.
“Modern websites are much more dynamic and interactive than 10 years ago, making it more difficult to build modern sites while also being fast.”
--Dries Buytaert, CEO of Acquia and the creator of Drupal
Modern websites are significantly more dynamic and interactive than they were even 10 years ago. Drupal 9 introduced the concept of “cache tags” that allows much more precise cache invalidations. So, for example, if user “X” makes a change to their phone number, instead of invalidating all user caches, Drupal 9 will only invalidate the cache for user “X”. Smart.
Read more about Drupal 9's Improved Performance and Scalability.
Greatly Enhanced Flexibility
With Drupal 9, just about everything that makes up the underlying architecture is considered an “entity”. This is a huge break from prior versions of Drupal as entities were broken up into distinct categories, such as node (page), field collection, and so on. Also, things like blocks (e.g. the header and footer of any site) were not considered entities.
These two limitations have been removed in Drupal 9, and the result provides amazing flexibility now. As you can see from the screen capture, just about anything can be referenced in a field. One example benefit is creating a block reference field. This would put the power of adding reusable content in the hands of content editors. How cool is that?
Easier Site Theming (Skinning)
Drupal 9 moved away from pure PHP-based templates to Twig, a simpler and more secure compiled templating language. The motivation for Twig was the same as moving Drupal to the Symfony platform: adoption of a modern, powerful, OOP-based engine. It removes the requirement that themers understand PHP, and instead provides them with a simple framework to provide the desired layouts.
For a complete breakdown, read Implementing Drupal Themes has Never Been Easier Thanks to Twig in Drupal 9.
Although migrating modules from Drupal 7 to 9 can be tedious and time consuming, the contributed module Drupal Module Upgrader helps significantly with the heavy lifting
“This project is a command-line script that scans the source of a Drupal 7 module, flags any code that requires updating to Drupal 9, points off to any relevant API change notices, and (where possible) will actually attempt to convert the Drupal 7 code automatically to the Drupal 9 version!”
Drupal 9 Brings Future Proofing to Your Site
Drupal 9 will make your site more future proof than ever in two ways:
It allows for content to be accessed beyond a browser
The new release cycle allows for major new innovations to be built into core
We’ll explore each item further below, but for a complete breakdown, read Drupal 9 Future Proofs Websites with Personalized Content and Architecture for a better Customer Journey.
Access Drupal 9 Without a Browser (I.E. Decoupled/Headless Drupal)
Drupal 9 core ships with RESTful Web Service APIs. With this capability built into core, the possibilities of how Drupal 9 can be used are practically endless. For example, Drupal can be used to serve content to mobile applications. Other examples might include sharing content with Amazon’s Alexa and Internet of Things (IoT) devices like wearables. Read How to Decouple Drupal in 2018 for more information.
New Release Cycle and New Innovations Built into Core
One of the many key reasons for Drupal’s success (17 years and counting) is the platform has always made big forward-looking changes. In the past, major version upgrades were very painful.
Drupal 8/9 has moved to a continuous innovation model. The bottom line is great news: the release cycle now brings sizeable functionality improvements every six months (instead of every few years). For example, some of the key items outlines in this blog, such as the Layout Builder and BigPipe, were introduced in Drupal 8.5 and 8.3, respectively.
Furthermore, the Drupal core team has committed to providing smooth transitions from one six-month release to the next.
But wait, it gets much better: Drupal 8 can be upgraded to Drupal 9 using a simple process.
Multilingual Capability is now Built in
As with many other parts of Drupal 9, the ability to create multilingual sites out-of-box was considered so important, it had its own core initiative.
Site and content translations are insanely easy to configure in Drupal 9 compared to prior versions of Drupal. As mentioned above, just about everything in Drupal in considered an entity, and all entities may be translated using a simple UI. You can even configure a workflow to approve translations in every language before they become visible to your guests.
For full details, see Drupal 9 Multilingual Capability is now Built into Drupal Core. You can try translating pages on our hands-on Drupal 9 demo site today.
Built-in Media/Media Library Modules Ease Media Management
One of the major downfalls of Drupal in the past was both adding media to content, and for larger sites, managing the media assets. With the release of Drupal 8.5.0, the media module was added to core, finally making Drupal’s media capabilities on par with CMS platforms like WordPress.
When combined with the Workflow module (also now built into core), it’s easier than ever to upload, manage, and reuse media assets, then move content between workflow states (e.g. “draft”, “review”, and “published”).
The Media Library module introduced in Drupal 8.6.0 provides a simple method to embed YouTube or Vimeo videos directly in your content text areas.
Learn all about the Media and Media Library modules here: Use the Built-in Media/Media Library Drupal Modules to Manage Media Assets.
Beyond Drupal 9 Core
As of the writing of this blog, there are over 6,000 Drupal 8/9 modules. Contributed modules are developed and maintained by the community (as is much of Drupal core). For example, I have contributed projects and patches.
There are thousands of individual and over 1,000 organizations that develop code for Drupal core and contributed modules. Right now, just about everyone is focused on Drupal 8, not 7.
The Perfect Time to Upgrade Drupal to 9 is Now
Drupal 8 was released nearly three years ago as of this post date. There are nearly 7,000 contributed modules available for Drupal 9, so we generally see either a module has moved into core (e.g. views), been upgraded to Drupal 9, or has a Drupal 9 equivalent. This is not always the case, which is why it’s important to assess your site before thinking about an upgrade.
Since Drupal 9 was released June 3rd, 2020, like Drupal 6, Drupal 7 and 8 will be end-of-lifed in 2021, meaning it will only receive critical security updates for core, but not necessarily for contributed modules. Why wait until everyone is in a rush to upgrade their site when you can start now?
Use the form below, call us at +1 (800) 930-2701, or email us at [email protected] today to get started with an assessment.