Drupal Express (DX) to Drupal 10 Upgrade/Migration Strategies

Drupal Version

Many Georgia Tech websites have been built using Drupal Express (DX), which is a custom version of Drupal that allows you to create a website with little technical or design expertise. The ready-made site comes with built in features and tools like news and events listings, and mobile optimization.  The Office of Information Technology offers Drupal Express as an option when requesting a new web hosting account.  Selecting this option causes Drupal Express to be pre-installed in the account so that the unit can start using the site almost immediately without having to do any technical work on the back end of the site.

In spite of the continued use of the name, there is very little technical similarity between Drupal Express for Drupal 7 (we'll call this Drupal 7 Express) and the current Drupal Express for Drupal 10 (we'll call this Drupal 10 Express).  If you are running a Drupal 7 Express site, you will need to completely rebuild your site in Drupal 10 or another content management system.  This is a good time to assess your site and determine if it might be a better fit for something like Sites@Georgia Tech - OIT's article "Is Drupal the right choice of CMS for my site?" goes into some of the pros and cons of both Drupal 10 and Sites@Georgia Tech.

If you choose to move forward to Drupal 10, the following guidelines and tips will help you plan for a manual site migration from Drupal 7 Express to Drupal 10 Express:

  • Vertical, Horizontal, and Multipurpose page types are not going to be ported to Drupal 10 and will not be copied over by the Drupal Migrate tool. Such pages will have to be completely rebuilt in Drupal 10 using the new layout system called Layout Builder.
  • Drupal 7 Express sites may still benefit from using the Drupal Migrate tool to at least bring over their Basic Page content. Bear in mind that some amount of clean-up will be necessary after using Migrate, but the clean-up may be easier than cutting and pasting a lot of Basic pages into your new site.

    Kevin Pittman has posted a detailed Drupal Migration guide that describes how to use the Migrate tool.  (The guide is labeled for migrating to Drupal 8, but the concepts still apply when migrating from Drupal 7 to Drupal 10.)
  • Other components included in Drupal Express may not be available for Drupal 10 or may have been superseded by new components. A breakdown of known Drupal Express components and their status is posted below.

In case you are enlisting the help of someone with technical developer skills who would like to know more about the make-up of Drupal Express and what to expect when migrating a Drupal Express site to Drupal 10, below is the full list of components included in Drupal Express (excluding minor ones no longer needed in Drupal 8+) and their known Drupal 10 status.

Please note that just because a module has a production version, this does not mean that it works the same as it did in Drupal 7 or that it supports all of the features in the Drupal 7 version.  Please read the documentation for each module to see what has changed.

Custom Drupal Express components and their Drupal 10 status
(Last Updated March 1st, 2022)
Component NameAvailable
Drupal 10?
Georgia Tech Web ThemeYesAn official Institute Communications Drupal 10 theme is available.
GT SuperblocksNoNo port planned or expected of this custom module
GT EditorNoNo port planned or expected of this custom module, but the built-in CKEditor provides much of the same functionality and can be customized as needed
GT LoginNoNo port planned or expected of this custom module, but the CAS module is part of Drupal 10 Express and provides GT Account Username based authentication.  CAS configuration instructions are available.
GT ToolsYesThe official Drupal 10 Georgia Tech theme has it's own required "GT Tools" module that provides support for some of the theme's features.
HG ReaderYesAn official port of the official Hg Mercury is available.  It uses a feeds approach (creating nodes for each news or event item) that is different from the Drupal 7 module approach.  Testing in a development environment is recommended to gain familiarity with how to configure and manage the Drupal 10 module.
JWFilterSupersededJWFilter was for the old OIT DMI media repository that is no longer available.  Please use the Ivan Allen College's Support for oEmbed module for embedding videos from the new Georgia Tech MediaSpace repository
Contrib (Third Party) Drupal Express components and their Drupal 10 status
(Last Updated November 1st, 2021)
Component NameAvailable
Drupal 10?
Admin MenuSupersededUse Admin Toolbar
Admin ViewsIn Drupal 8+ Core 
Block ReferenceSupersededUse the built in Entity Reference field
CKEditorIn Drupal 8+ Core 
CToolsProductionNot required by any previous Drupal Express modules in Drupal 8
Custom SearchBetaFrom the Custom Search project page: "The 8.x-1.0-beta branch is usable, and instead of overriding the default search block like it did with D6/7, it provides its own block(s)". Not recommended for use (not being updated by maintainer)
DateIn Drupal 8+ Core 
DiffProductionSee the Diff project page
Field GroupProductionSee the Field Group project page
Google AnalyticsProductionSee the Google Analytics project page
IMCEProductionSee the IMCE project page
IMCE MkDirSupersededNow part of the main IMCE module
LibrariesDevelopmentNot required by any Drupal 10 Express modules
LinkIn Drupal 8+ Core 
LinkItProductionSee the LinkIt project page
Menu BlockProductionSee the Menu Block project page
Module FilterProductionSee the Module Filter project page
NodeblockSuperseded"Node" blocks can be created in Drupal 8+ by creating a custom block type and adding an Entity Reference field configured to reference node content
Override Node OptionsProductionSee the Override Node Options project page
PathautoProductionSee the Pathauto project page
RevisioningIn Drupal 8+ CoreReplaced by the combination of Workflows and Content Moderation.
TokenProductionSee the Token project page
TransliterationNoA filename transliteration patch for Drupal 8+ core is available if you want to have filenames transliterated, but that patch hasn't been committed to production core yet.  It has been rolled into a Transliteration Filenames module.
Video Embed FieldProductionSee the Video Embed Field project page
View UnpublishedProductionSee the View Unpublished project page
ViewsIn Drupal 8+ CoreExisting views do not migrate to Drupal 8+, but can be recreated by hand
Views Bulk OperationsProductionSee the Views Bulk Operations project page
WYSIWYG FilterIn Drupal 8+ Core