Extra Block Types (EBT) - New Layout Builder experience❗

Extra Block Types (EBT) - styled, customizable block types: Slideshows, Tabs, Cards, Accordions and many others. Built-in settings for background, DOM Box, javascript plugins. Experience the future of layout building today.

Demo EBT modules Download EBT modules

❗Extra Paragraph Types (EPT) - New Paragraphs experience

Extra Paragraph Types (EPT) - analogical paragraph based set of modules.

Demo EPT modules Download EPT modules

Scroll

Preparing the site for upgrade to Drupal 11

13/04/2025, by Ivan

Before upgrading a Drupal 6 or Drupal 7 site to Drupal 11, it is recommended to take several steps to ensure the process goes smoothly and produces the desired results.

Unlike previous major core updates, the Drupal 11 upgrade process does not update the source site in place. Instead, configuration and content entities are migrated from the source site to a clean Drupal 11 site. Refer to the Upgrading from Drupal 6 or 7 to Drupal 11 page for an overview of the process and key differences.

Although the upgrade doesn’t modify the source site, it is recommended not to run it on a live site. Instead, use a backup of the live site to ensure a consistent database state (no writes during the migration) and avoid performance impact on the live site.

Inventory the Source Site

It is important to understand how your existing Drupal 6 or 7 site is structured before beginning the upgrade to Drupal 11.

Identify core and contributed modules enabled on the source Drupal 6/7 site. You can do this by viewing the modules listed under the "Modules" admin page ("Admin" > "Site Building" > "Modules") or via the “Available Updates” page at admin/reports/updates.

Record a full list of modules enabled on the source site and use it as a checklist when planning your upgrade. For each module, answer the following:

  • Do I still need this module in Drupal 11?
  • Has this module been moved into the Drupal 11 core? For example, Views is now in core.
  • Does the module have a Drupal 11 version? If not, do I still need it? Are there alternatives available?
  • Note that Drupal 6/7 modules don’t always map 1:1 with Drupal 11 modules. For example, the Block module in Drupal 6/7 is split into Block and Custom Block in Drupal 11.

The Drupal 11 web upgrade interface shows which modules can be upgraded automatically and which cannot. Refer to the Upgrade Using Web Browser page for more details. You can also try the Upgrade Check module which uses an external service to estimate your upgrade effort.

Check the Known Issues Page

The upgrade path from Drupal 6/7 to Drupal 11 is still experimental and some key modules may not have complete upgrade paths. When preparing to upgrade, be sure to review the Known Issues page.

Update the Drupal 6/7 Site to the Latest Module Versions

The upgrade process assumes that you update your older site to the latest minor release. For example, if your site is running on Drupal core 6.35, update it to 6.38 first.

If you plan to migrate configuration or content from contributed modules, use their latest versions.

Use the Available Updates page at admin/reports/updates on your Drupal 6/7 site to check for updates.

Prerequisites for Upgrading from Drupal 6/7 to Drupal 11

  • A new Drupal 11 installation with the core "Migrate" and "Migrate Drupal" modules enabled. If you upgrade using the browser UI, also enable "Migrate Drupal UI".
  • For multilingual migrations using the i18n module from Drupal 6/7, enable the Migrate Drupal multilingual module (migrate_drupal_multilingual).
  • Access to the Drupal 6 or 7 database from the Drupal 11 server.
  • Access to source site files.

– If only public files are used, they can be accessed via the site URL.
– For private files, the file directory must be accessible by the Drupal 11 site, and you must configure file_private_path in settings.php before running the upgrade.

– See the install instructions on the linked page.
– Install Migrate Tools
– Install Migrate Upgrade
– Install Migrate Plus
– For more info, refer to the Upgrade Modules list.
IMPORTANT: Be sure to use versions of the modules compatible with your version of Drupal 11. Check the project pages for each module for version compatibility.

Enable Required Core and Contributed Modules in Drupal 11

The migration process does not automatically enable modules on the target Drupal 11 site. Only migrations for modules installed on both the source and target sites will be run. You must enable all core and contributed modules on the Drupal 11 site that you wish to migrate configuration or content for.

Examples:

  • If Addressfield is enabled on the Drupal 7 site and you want to migrate address data, enable the Address module in Drupal 11 first. Address D8 provides migration plugins for Addressfield.
  • If the Forum core module is enabled on the source Drupal 7 site, enable it in Drupal 11 before upgrading.

Do Not Configure the Drupal 11 Site

The upgrade process will overwrite configuration on the Drupal 11 site. Do not configure anything until the upgrade is complete. This means you do not need to manually create content types or fields before starting. Migrate will create them during migration. It’s common to install Drupal 11 using the minimal install profile to avoid unwanted default configuration.

Do Not Create Content on the Drupal 11 Site

The upgrade process retains unique IDs from the source site. For example, if user ID 2 exists on the source site, it will be assigned to the same account in Drupal 11. If you create a user with ID 2 beforehand, it will be overwritten. This applies to users, taxonomy terms, and nodes.

To prevent data loss, don’t manually create any content on Drupal 11 until the upgrade is fully complete.

Perform the Upgrade

You have two options:

  • Use the browser-based UI – Easier and GUI-based, but less flexible.
  • Use Drush – More powerful and faster, allows granular control but requires CLI and additional modules.

Drupal’s online documentation is © 2000-2020 by the individual contributors and can be used in accordance with the Creative Commons License, Attribution-ShareAlike 2.0. PHP code is distributed under the GNU General Public License.