Migrer vos contenus et configurations depuis drupal7 vers drupal10
Introduction
La migration de Drupal 7 vers Drupal 10 est une étape cruciale pour les sites web qui utilisent encore cette ancienne version. Cette mise à niveau est importante pour plusieurs raisons :
- Sécurité : Drupal 7 ne bénéficiera bientôt plus des mises à jour de sécurité, rendant les sites vulnérables aux attaques.
- Fonctionnalités : Drupal 10 offre de nouvelles fonctionnalités et une meilleure expérience utilisateur.
- Performances : Drupal 10 est plus rapide et optimisé pour les technologies modernes.
- Maintenance : Il est plus facile de maintenir et de développer des sites sur la dernière version de Drupal grâce aux améliorations apportées à l'architecture du CMS.
Pour faire la migration, les options qui s'offrent à vous sont les suivantes :
Dans ce guide, nous allons aborder deux méthodes de migration :
- La méthode classique fournie par Drupal, qui est une approche standard et reconnue.
- La méthode développée par Habeuk, qui offre plus de maniabilité et de contrôle à l'utilisateur grâce à des modules spécifiques.
Méthode classique de migration
Pour effectuer une migration classique, il est recommandé d'utiliser les modules contrib de Drupal tels que migrate
, migrate_tools
, migrate_plus
, et migrate_upgrade
. Voici les étapes principales :
- Export des configurations : Utilisez les modules
migrate
pour exporter les configurations de votre site Drupal 7. - Import des configurations : Importez ces configurations dans votre nouveau site Drupal 10.
- Sources de référence : Pour plus de détails, consultez la documentation officielle de Drupal.
Limitations de la méthode classique
La méthode classique de migration peut parfois entraîner des pertes de données, notamment des entités et de leurs instances. Pour surmonter ces limitations, Habeuk a développé un processus plus contrôlé et sûr, organisé autour de deux modules spécifiques.
Utilisation des modules Habeuk
Une fois les configurations de base importées à l'aide des modules contrib de Drupal (migrate_tools
, migrate_plus
, migrate_upgrade
), suivez les étapes ci-dessous pour utiliser les modules Habeuk :
Installation des modules
Installez les modules suivants :
- Drupal 7 : Installez le module migrateexport
- Drupal 10 : Installez le module migration_hbk_auto
Commandes :
- Pour Drupal 7 :
composer require drupal/migrateexport
drush en migrateexport
- Pour Drupal 10 :
composer require drupal/migration_hbk_auto
drush en migration_hbk_auto
Import des entités
Accédez à la page d'import des entités : /admin/migration-hbk-auto/import-from-d7
- Cliquez sur le bouton "load all entities" pour charger les différentes entités de votre site Drupal 7.
- Les entités s'afficheront sous forme de liste accordéon.
- Déroulez l'entité que vous souhaitez traiter et cliquez sur "List bundles" pour obtenir la liste des bundles liés à cette entité.
- Déroulez le bundle que vous souhaitez traiter. Cliquez sur "vérifier la configuration" pour vérifier si toutes les configurations relatives à ce bundle sont présentes.
Un mini-rapport vous sera rendu avec :
- Le nombre de contenus à importer
- Les champs du côté Drupal 7
- Les champs du côté Drupal 10
(Si des champs sont manquants, ils seront affichés en rouge du côté Drupal 7 et "manquant" du côté Drupal 10.)
Re-importation des champs
Si des champs sont manquants ou si vous souhaitez refaire l'import des champs, cliquez sur le bouton "Re-importer tous les champs".
Import des entités
Remplissez le formulaire en bas à gauche avec les informations suivantes :
- pagination length : Définit combien de contenus seront importés par requête.
- pagination start : Définit à quelle "page" l'import doit commencer.
- continue : Définit si le processus d'import doit s'arrêter en cas d'erreur.
Cliquez sur le bouton "Importer les contenus" pour lancer l'import des contenus.
En prévision des cas où vous auriez besoin de ne réimporter que certaines des instances de votre contenus(vous avez fais des modifications que vous ne souhaitez pas perdre dans la plupart des instances déjà importer) , Gestion de l'import des contenus a été mis à votre disponisition et s'utilise comme suite:
- Cliquez sur le bouton en question
- Un popup s'affiche dans lequel vous pouvez retrouver la liste des instances de votre entité que vous pouvez gérer. Une fois que vous avez trouvé l'instance que vous souhatez récupérer, il vous suffit de cliquer sur le bouton de la colonnes d'actions pour effectuer l'import de celui-ci
Une fois toutes les configurations et instances de vos entités importées, il ne vous reste plus qu'à mettre en place votre thème et finaliser votre site Drupal 10. Félicitations, vous y êtes arrivé !