Articles

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.

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.

Note: The topics on this page are not directly related to migrating configuration or content to Drupal 11. They are included to help site developers preparing for an upgrade to Drupal 11 understand these areas and choose the most appropriate approach.
Drupal 8 Configuration Management System
One of the most powerful new features in Drupal 11 is its enhanced configuration management system, which can be used to deploy an entire site's configuration from one environment to another, such as DEV - STAGING - PROD.

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.

Overview
When preparing to upgrade to Drupal 8, it's worth spending some time planning the upgrade approach. While the content of your previous Drupal site can likely be migrated without issues, your Drupal 8 configuration will likely require some manual work. For example, the Views module does not yet support automatic upgrades in core, which means you'll need to recreate views manually on your Drupal 8 site. The best upgrade approach should be evaluated on a case-by-case basis.

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.

This documentation page provides an overview of multilingual upgrades from Drupal 6 to Drupal 8. A similar page for Drupal 7 to Drupal 11 will be created soon. In the meantime, refer to the multilingual migration meta issue.
Before You Begin: Enable D8 Modules
Drupal 8 offers comprehensive multilingual support in Core. As explained in the Drupal 8 Multilingual Guide, multilingual capabilities are provided by the following core 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.

Before You Begin
This page lists core Drupal and the most significant contributed modules related to upgrading to Drupal 11.
Earlier documentation: Migrating to Drupal 7 from various sources (some of which may still apply to Drupal 11)
Core Migrate Modules
Please refer to the Migrate API overview for technical documentation on core functionality.

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.

Upgrade Using a Web Browser
Before You Begin
Before starting the upgrade, make sure you’ve reviewed the following documentation:

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.

Upgrade Using Drush
Drush is a command-line shell and scripting interface for Drupal. Upgrading to Drupal 8 using Drush is an alternative to using the browser-based UI. It is especially useful for migrating complex sites as it allows migrations to be run individually and rolled back as needed.

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.

Drupal 6 to 8
Aggregator Categories
Drupal 8 no longer has the concept of aggregator categories, so they are not migrated to Drupal 8.
Allowed Protocols
Drupal 8 now stores protocols in the "filter_protocols" container parameter. If you modified the filter_allowed_protocols
variable, enter it in the services.yml
file.

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.

Create Your Initial Migrations
- Create migrations using drush migrate-upgrade --configure-only as described in the section "Upgrade Using Drush".
- Ensure you have a config/sync directory that will be used in the next step.
- Export the migrations using drush config:export
- Create your own migration module.
- Copy only the YML files you want to use from the config/sync directory to the config/install directory of your new custom module, editing

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.

The core "Migrate Drupal" module in Drupal 8 provides API support for migrating from Drupal to Drupal, and the "Migrate Drupal UI" module offers a simple user interface for upgrading from older versions of Drupal.

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.