Migration de site vers Drupal

Migration de Drupal 7 à Drupal 9

Votre site est encore sous Drupal 7 (D7) ? Il est temps de migrer sur la dernière version de Drupal, sachant que le support D7 cessera le 1er novembre 2023, une fin de vie reportée à 2 reprises d'une part à cause de l'impact du COVID-19 sur les budgets des entreprises, d'autre part pour ce 2ème report en raison d'un nombre encore trop important de sites utilisant D7 et qu'il ne serait pas responsable de laisser vulnérables.

Ne misez donc pas sur un 3ème report de cette EOL (End Of Life) en procrastinant et en attendant une échéance qui arrivera de toute les façons.

Oui mais pourquoi migrer si mon site tourne bien ?

  • Les tentatives d'intrusion sur les sites Internet sont quotidiennes par des robots de pirate. Ils détectent automatiquement le CMS utilisé et sa version pour ensuite venir exploiter les failles répertoriées. Les usages ensuite sont très nombreux et dépendent du CMS piraté et des capacités de l'hébergement. Exemples : Envoi en masse de spams - Introduction d'un code malveillant dans vos pages web permettant au pirate de faire du minage de cryptomonnaie (activité rémunérée) avec la puissance des cartes graphiques de vos visiteurs, etc...
  • les hébergements évoluent également. D7 tourne sur PHP 7 dont la dernière version 7.4 n'est plus active aujourd'hui mais juste en "Security Support" jusqu'au 28 novembre 2022 ! Ne pas maintenir à jour PHP est certes moins conséquent ... jusqu'à une certaine limite notamment car les hébergements évoluent et font disparaître progressivement ces versions obsolètes.
  • Au delà des aspects techniques et sécuritaires, votre site n'est probablement plus tout jeune notamment dans la programmation et des outils utilisés pour sa mise en page. Le passage au "Responsive" (mise en page élastique) est aussi un incontournable. Les navigateurs évoluent également et les écrans tactiles réagissent différemment qu'avec une souris. C'est aussi pour ces raisons qu'une refonte de votre site avec des outils modernisés sera certainement le bienvenue pour une navigation + confortable pour vos visiteurs.

"Migration" plutôt que "Mise à jour"

Tout en conservant sa logique et sa puissance de fonctionnement, la version 8 de Drupal (D8) a fait l'objet d'une refonte radicale en s'appuyant sur le puissant et dynamique framework Symfony, ouvrant par la même occasion son développement à une communauté de développeurs plus importante. Le moteur de template est donc désormais basé sur Twig fournit par Symfony lui-même.

Le passage D7 vers D8 nécessite donc une réécriture des extensions, des templates et des personnalisations. Une simple mise à jour ne peut pas intégrer tous ces changements de langages.

Le passage D8 vers D9 (version actuelle) s'est fait très facilement, le duo Symfony/Twig ayant été conservé, et malgré l'évolution de Symfony 3 vers Symfony 4.

Le passage D9 vers D10 sera tout aussi facile, donnant ainsi aux développements réalisés une pertinence et pérennité. De petites adaptations seront toutefois probables sans pour autant imposer une refonte complète du site Internet comme c'est le cas pour sortir de D7. D10 utilisera d'ailleurs Symfony 6 (sa dernière version actuelle) plutôt que 5, se donnant ainsi une plus longue durée de vie  et un niveau de support optimum.

D8 n'étant déjà plus supporté depuis novembre 2021 (= EOL de Symfony 3), la migration D7 se fait directement vers D9.

Il est important de suivre les évolutions technologiques de façon régulière et de maintenir les mises à jour de votre site Internet (Drupal ou autre d'ailleurs) afin d'assurer la meilleur compatibilité ascendante. Cela rend votre site Internet pérenne sur le long voire le très long terme à l'échelle de l'informatique.

Les étapes de la migration

Chaque migration est un cas unique. Suivant les modules utilisés, les développements et templates réalisés, les différents types de champ utilisés, la structure de navigation du site ... le process de migration sera adapté à chaque situation.

Cela étant, les grandes étapes sont les suivantes :

  1. Analyse des types de contenu D7 utilisés vs types de contenu D9 compatibles
  2. Création du nouveau site D9 vide
  3. Personnalisation du process de migration (ci-dessous) pour chaque type de champ avec l'objectif de ne perdre aucune donnée.
    C'est l'étape la plus importante et la plus longue à mettre en œuvre
  4. Migration aussi appelé processus ETL (Extract - Transform - Load).
    Cette étape est entièrement automatisée
    • Extract - Extraction et compilation des données de contenu D7
    • Transform - Transformation des données extraites en vue d'être compatibles avec la nouvelle structure D9. Les données peuvent être converties, reformatées, nettoyées, voire même agrégées pour pouvoir être introduites dans le nouveau site D9. Ces transformations sont définies dans l'étape précédente de personnalisation.
    • Load - Chargement des données transformées sur le nouveau site D9
  5. Vérification de l'intégrité des données sur le nouveau site D9
    Tant que les contenus importés ne sont pas tous validés, il est nécessaire de revenir à la sauvegarde avant migration, d'adapter la personnalisation puis de "rejouer" la migration ... autant de fois qu'il le faut. 
  6. Finalisation du site D9
    Il n'est pas conseillé d'exécuter cette étape si la précédente n'est pas complètement validée.

Migration de tout CMS vers Drupal

Que ce soit en provenance de WordPress ou de tout autre CMS, nous étudions la faisabilité pour migrer votre site vers la dernière version de Drupal.

Demandez votre devis pour la migration de votre site Internet