-

Comment effectuer une migration de site web ? Aperçu du processus basé sur l'exemple de Drupal

La migration de site web consiste pour beaucoup à changer de site. Cependant, il est utile de comprendre ce que cela implique réellement. Il ne s'agit pas seulement de changer ou de mettre à jour un CMS, mais aussi d'un processus qui peut affecter considérablement la performance de la page web, sa sécurité, et son alignement avec les normes modernes. Dans cet article, nous nous concentrerons sur l'approche générale de la migration mais nous utiliserons Drupal comme exemple pour offrir une perspective complète sur le sujet.

Qu'est-ce qu'une migration de site web ?

La migration de site web est le processus de déplacement d'un site vers une version plus récente d'un CMS ou une autre plateforme. En pratique, cela signifie, par exemple, mettre à niveau Drupal 7, dont le support est sur le point de s'achever, vers le dernier Drupal 10. Cela inclut également le passage d'un système (tel que WordPress ou Joomla) ou d'un CMS moins populaire et plus supporté à un système entièrement différent. 

Lors de la migration, nous considérons les données, les fonctionnalités et les intégrations avec des systèmes externes. Nous réécrivons le frontend du site web, profitant des dernières capacités techniques et veillant à maintenir la vitesse de la page (par exemple, en examinant le score dans Page Speed Insights). Du point de vue du propriétaire ou rédacteur de la page web, nous gagnons vraiment beaucoup, ce dont nous écrivons plus tard.

Pourquoi devriez-vous migrer votre site web ?

Le processus de migration apporte de nombreux avantages. Il améliore la performance du site, augmente sa sécurité, et l'aligne avec les normes de programmation actuelles. Nous examinerons les avantages de ce processus à travers un exemple spécifique – la migration de Drupal. 

Amélioration de la sécurité et de la fonctionnalité du site 

Passer à une version plus récente de ce système peut considérablement améliorer la fonctionnalité et la sécurité de la page web. Nous devons nous rappeler que les mises à jour régulières de sécurité sont cruciales car elles corrigent les vulnérabilités, réduisant le risque d'attaques et de perte ou de fuite de données. En choisissant de migrer le site, nous assurons ainsi une protection contre les nouvelles menaces. 

Changer le design du site pour un plus moderne

La migration est une excellente occasion de réaliser une refonte de site, c'est-à-dire de rafraîchir son apparence. Nous pouvons créer et appliquer des modèles de design modernes à cette étape et même changer toute la conception visuelle de notre page web. 

Une mise à jour du design attire non seulement l'attention des utilisateurs mais peut aussi améliorer la fonctionnalité et la lisibilité du site, ce qui est essentiel pour la satisfaction globale des visiteurs. Une mise en page rafraîchie est l'élément le plus visible pour l'utilisateur final, rendant le site plus actuel. 

Modification et archivage possible des données

Au cours de la migration, il est possible de revoir et modifier en profondeur les données. Les informations obsolètes ou redondantes peuvent être archivées pour maintenir la base de données en ordre. Lors de cette révision, nous pouvons conclure que certains champs sont inutilisés, peuvent être fusionnés avec d'autres, ou que le problème peut être résolu autrement. Cela peut inclure la suppression d'un champ séparé pour un résumé d'article ou l'utilisation d'un dictionnaire pour les balises. 

En même temps, des ajustements peuvent être faits aux données, les adaptant à la version plus récente du CMS et aux modules Drupal. Par exemple, depuis Drupal 8, le module Media a changé l'approche des images, documents ou vidéos placés sur le site. 

Changer la façon de stockage des données

La migration permet non seulement une modification ou un archivage efficace mais aussi un ajustement réfléchi du stockage des données. Changer le système pour une version plus élevée de Drupal avec tous les nouveaux modules peut permettre de stocker les informations de manière optimale en utilisant des types de contenu, des groupes ou des taxonomies. 

Les types de contenu, entités ou taxonomies dans Drupal vous permettent d'organiser les données stockées dans le système


Exemples d'entités (groupes), taxonomies et types de contenu dans Drupal 

Une gestion réfléchie des entités et des données permet d'optimiser la performance du site et rend plus faciles les modifications à l'avenir, réduisant les coûts au cours de la vie du site.

Réécriture des intégrations et fonctionnalités existantes

Lors de la migration d'un site, il est utile de réévaluer les intégrations et fonctionnalités existantes. Parfois, à ce stade, il s'avère que certains éléments sont pratiquement inutilisés, et leur déplacement n'est pas justifié. Cela peut être, par exemple, un formulaire de contact qui n'est plus sur le site ou une intégration désactivée avec un service externe dont l'abonnement a expiré depuis longtemps. Ils peuvent être des problèmes strictement de maintenance, comme des pages dont le contenu a été déplacé ou supprimé par le passé.

À ce stade, nous pouvons également rechercher de nouvelles solutions plus efficaces pour augmenter la fonctionnalité du site. Nous pouvons écrire des éléments clés pour le fonctionnement du site de manière plus réfléchie, augmentant ainsi la sécurité, les performances et l'extensibilité future avec de nouvelles fonctionnalités. 

Comment effectuer la migration de site web ?

Le processus de migration d'un site est relativement universel, quel que soit le système. La chose la plus importante est d'y réfléchir avant de créer un nouveau look ou de rédiger les premières lignes de code. Il faut planifier une migration, car cela peut faire gagner du temps lors des changements ultérieurs. Nous devons garder à l'esprit qu'avec les versions plus élevées du système, comme Drupal 10, de nombreux modules ont changé par rapport aux précédents, et certains ne sont même plus pris en charge. 

Donc, nous migrons le contenu de la page web qui doit être correctement testé pour les erreurs. Nous sommes impatients de repérer, tout d'abord, les champs migrés incorrectement ou vides où les données n'ont pas migré. Nous déployons le site avec les nouvelles fonctionnalités rédigées à la place de l'ancien site, et c'est fait. Mais est-ce vraiment si simple ? Oui et non. Examinons le processus plus en détail.

Étape 1. Planification de la migration du site

Dans la première étape de la planification de la migration, surtout pour Drupal 7, il est important de déterminer exactement ce qui sera déplacé et d'où. Parfois, il arrive, par exemple, que les propriétaires de sites n'aient plus besoin de nouvelles anciennes de plus de 10 ans. La migration est donc une occasion d'optimiser la structure des données et d'éliminer les informations redondantes, facilitant la gestion du contenu par la suite.

Si le site utilise une intégration externe, telle que Mautic, il est nécessaire de prendre cela en compte dans le processus de migration. Cet élément peut être mis en place sur le nouveau site conformément aux normes actuelles, ce qui aura un impact positif sur la sécurité et la facilité de l'administration ultérieure. 

Planifier une liste correcte de tâches, les découper, les prioriser, et indiquer les relations entre elles soutient le développement du site. Cela facilite non seulement la gestion efficace des tâches, mais fournit également une clarté dans la direction du projet, permettant des réponses flexibles aux changements possibles pendant la migration du site.

Étape 2. Préparation à la migration de site

L'étape suivante est la préparation à la migration du site, y compris la création d'un environnement local et le développement d'une structure de données appropriée. En créant des groupes, types de contenu ou taxonomies avec des champs appropriés, nous préparons un environnement cible pour transférer les données de l'ancien site vers le nouveau de manière ordonnée. 

À ce stade, la sauvegarde est également cruciale. Nous faisons une sauvegarde de la version précédente du site, notamment de la base de données, car c'est de là que nous transférerons le contenu. 

Étape 3. Migration du contenu du site

Quel que soit le système, essayez de transférer le contenu du site même avant de mettre en œuvre de nouvelles fonctionnalités. Cela nous permettra de détecter tôt les cas dits particuliers, c'est-à-dire des situations spécifiques qui peuvent perturber le site. En suivant cette séquence, nous pouvons les résoudre immédiatement à un stade relativement précoce du développement du site. Ainsi, nous minimisons le nombre d'erreurs avant la mise en œuvre. 

Pour Drupal, un aspect crucial est d'utiliser des modules de migration et de modifier les données à l'aide de plugins de migration. Cela vous permet d'adapter votre structure de données à la nouvelle version de Drupal. La migration d'autres systèmes peut être plus complexe et nécessite de comprendre comment le CMS précédent, ou plutôt sa base de données, fonctionnait. 

Étape 4. Test de la migration du site

Les tests sont essentiels pour vérifier que toutes les données ont été migrées correctement. Nous prouvons que les données dans la nouvelle base de données correspondent à l'ancienne, ce qui peut aider à éviter des problèmes à l'avenir. Après tout, nous ne voulons pas que certains articles n'aient pas de tags ou d'auteurs attribués, par exemple.

Un point très important concerne les fichiers qui, après migration du site précédent, doivent également être disponibles dans le nouveau. Ce n'est pas seulement copier d'un endroit à un autre, mais aussi interférer avec leurs chemins. Par conséquent, nous devons être particulièrement vigilants lors de leurs tests. Par exemple, les fichiers PDF ayant un aperçu devraient être disponibles avec celui-ci, et les images doivent avoir une boîte migrée avec du texte alternatif. Il y a beaucoup de ces petits éléments dont nous devons nous occuper pour minimiser les ajustements ultérieurs. 

Étape 5. Styliser la page web

Si nous souhaitons changer le design de notre site pendant la migration, le premier stylage de la page a également lieu avant la prochaine étape. 

Ceci est le processus par lequel nous arrangeons le contenu sur la page web, lui donnons le bon look, ajoutons les animations nécessaires, etc. Grâce à cette activité, nous essayons de rapprocher le plus possible le site du design préparé auparavant, tout en gardant à l'esprit sa réactivité. 

La stylisation du site web est le processus d'arrangement du contenu du site selon le design prévu.


Exemple d'un site avec et sans stylisation, source: Démo Droopler

L'ordre ici peut varier en fonction de la complexité de la page, mais généralement ce processus est déjà fait quand nous avons les données prêtes sur le site. Cela nous fait gagner du temps car il n'est pas nécessaire d'ajouter un contenu temporaire ou de test. De cette manière, nous pouvons voir comment le nouveau site, déjà avec les données migrées, se présente dans une toute nouvelle "tenue".

Étape 6. Migration des fonctionnalités

L'étape suivante consistant à déplacer la logique métier plus complexe qui existe sur l'ancien site. 

Dans le cas de Drupal, à ce stade, nous rencontrerons des défis en raison des différences entre les versions PHP, mais c'est aussi une excellente occasion de rafraîchir le code. Dans Drupal 10 en utilisant PHP 8, nous écrivons du code orienté objet qui est beaucoup plus lisible et ouvert à de nouvelles fonctionnalités. Nous ne pouvons donc pas copier l'ancien code vers le nouveau site dans la plupart des cas, car il ne fonctionnera pas. Cependant, nous pouvons modéliser l'ancien code, l'adapter à l'approche moderne, et, à l'occasion, le modifier pour répondre à la logique commerciale supplémentaire approuvée lors de la planification.

La migration des fonctionnalités est également un moment idéal pour effectuer un refactoring du code. Nous pouvons alors l'optimiser et le rafraîchir pour le rendre plus lisible. Souvent, lors de ce processus, nous supprimons des parties redondantes du code et utilisons des outils qui prennent soin de sa qualité dès le début.

De nombreux modules utilisés sur l'ancienne version du site peuvent ne plus être disponibles. Parfois, cependant, il s'avère que nous n'avons pas besoin de les coder nous-mêmes, mais simplement de chercher un similaire qui exécute des tâches similaires. Cela peut faire gagner beaucoup de temps et offrir de nouvelles fonctionnalités au site. 

Étape 7. Déploiement du site

La dernière étape est le déploiement, c'est-à-dire la mise en œuvre du site sur la nouvelle plateforme. Nous testons si les fonctionnalités fonctionnent selon les attentes et nos hypothèses. Ici aussi, nous avons un point de référence sous la forme de l'ancien site, et les scénarios de test peuvent se ressembler. 

Nous pouvons prendre soin de la séparation des configurations pour qu'après le déploiement, toutes les clés d'accès API soient correctes et toutes les intégrations actives. En outre, nous activons la minification des fichiers, améliorant la performance du site en réduisant la taille des fichiers. Cela rendra le site plus rapide à charger, améliorant les performances SEO

Migrer un site Drupal 

La migration de site web est un processus complexe de déplacement de données, de fonctionnalités et d'intégrations, affectant les performances, la sécurité, et l'alignement avec les normes modernes. Cela inclut l'utilisation des dernières versions de langages de programmation et de frameworks ou l'écriture de code orienté objet, sécurisé. De telles mises à jour minimisent le risque d'erreurs ou d'attaques possibles. 

Nous avons parcouru ce sujet complexe étape par étape pour vous donner une meilleure idée de la manière de se préparer à la migration et à quoi s'attendre durant le processus. Chaque phase de celui-ci – de la planification à la mise en œuvre – est nécessaire et incroyablement importante dans la création d'un site fonctionnant correctement. Le processus est assez similaire quel que soit le CMS. 

Si vous avez besoin de soutien pour transférer la page web, nous pouvons vous aider. En réalisant de telles implémentations, nous avons acquis de l'expérience, appris à quoi faire attention, et comment aborder ce sujet. Nous serons heureux de partager nos connaissances, et de planifier et réaliser la migration de votre site Drupal

migrate Drupal 7 website Droptica