Deux spécialistes transfèrent des fiches de contenu et leurs relations d’un ancien classement vers de nouveaux casiers

Drupal vers WordPress · Migration

Migrer Drupal vers WordPress sans aplatir les contenus

Un export de textes ne suffit pas. Les types, champs, relations, langues et URL Drupal doivent trouver une destination explicite dans WordPress.

Sur cette page

Changer pour une raison vérifiable

Drupal 7 est hors support depuis le 5 janvier 2025, mais cela ne transforme pas WordPress en réponse universelle.

Le changement peut être justifié par la maintenance, le recrutement, l’édition ou le coût des modules spécifiques. On écrit ces raisons avant de choisir la cible.

Si le site dépend de workflows, permissions ou modèles de contenu complexes, il faut prouver que WordPress les reprend sans empiler des extensions fragiles.

  • Support et sécurité
  • Capacité de l’équipe
  • Complexité éditoriale
  • Coût des dépendances

Faire correspondre les modèles, pas les écrans

Un type Drupal, ses champs et ses taxonomies ne deviennent pas correctement un simple article.

On mappe chaque type vers un type de contenu, chaque champ vers une donnée native ou contrôlée, et chaque relation vers une structure testable.

Les contenus rejetés sont rapportés. Une migration qui affiche « terminé » avec des champs silencieusement perdus est ratée.

  • Types et champs
  • Taxonomies et relations
  • Médias et textes alternatifs
  • Utilisateurs et rôles

Conserver les adresses qui ont une histoire

Les alias Drupal peuvent être gardés ou redirigés vers une destination équivalente.

On exporte les URL avant migration, puis on compare la sortie WordPress. Les redirections sont directes et les liens internes utilisent déjà les nouvelles adresses.

Les langues restent séparées avec leurs liens alternatifs réciproques. Tout renvoyer vers une seule version linguistique détruit le trajet.

  • Inventaire des alias
  • Table ancienne → nouvelle URL
  • 301 sans chaîne
  • Hreflang réciproque

Prouver la migration sur un lot pilote

Un échantillon doit contenir les cas difficiles, pas seulement trois actualités.

On migre une page riche, un média public et privé, une relation, un formulaire, un compte et un contenu multilingue. Les volumes source/cible, les fichiers orphelins, les droits et la connexion des comptes sont réconciliés.

Le pilote utilise des données fictives ou anonymisées. La bascule complète vient après les tests d’édition, de recherche, de formulaire, d’indexation et de retour arrière.

Le pilote est rejoué de façon incrémentale avec un point de reprise ou un suivi des changements. On nomme la source d’écriture, draine les tâches et webhooks, gèle brièvement les éditions puis réconcilie le delta final.

Le retour arrière n’est sûr que si la cible est restée en lecture seule ou si les écritures nouvelles peuvent être synchronisées vers la source. Changer le DNS seul ne remet pas les données dans l’ancien CMS.

  • Comptages source et cible
  • Fichiers privés et orphelins
  • Comptes et droits vérifiés
  • Rapport des écarts
  • Retour arrière chronométré
  • Imports incrémentaux idempotents
  • Gel et delta final
  • Drain des files et webhooks
  • Réconciliation ou synchronisation inverse

Rendre les deux versions compatibles pendant le passage

Le gel éditorial ne suffit pas si un ancien worker lit encore ce que la nouvelle cible écrit.

Les tâches, messages et valeurs de cache portent un schéma ou un espace de noms versionné. L’ancien Drupal et le nouveau WordPress savent lire les formats produits pendant la coexistence et le retour arrière ; un message incompatible est isolé sans empoisonner toute la file.

Les sauvegardes de base et fichiers privés sont déchiffrées dans les deux sens avec les vraies clés KMS, grants et contextes. Les connexions sortantes, IP autorisées et certificats mTLS sont rejoués depuis la cible, pas seulement depuis le poste de recette.

Avant de retirer Drupal du répartiteur, le contrôle fonctionnel vérifie base, médias, recherche, formulaires et connexion. Les nouvelles requêtes sont coupées, les téléversements et connexions persistantes sont drainés, et l’horloge reste synchronisée pour les jetons, signatures et tâches.

  • Schémas et caches lisibles par les deux versions
  • Déchiffrement cible et rollback
  • Intégrations testées depuis les IP de production
  • Contrôle fonctionnel et connexions drainées

Décider avant la bascule

Drupal vers WordPress, sans migration aveugle

  1. Inventaire Drupal complet
  2. Modèle WordPress validé
  3. Lot pilote comparé
  4. URL et langues testées
  5. Extensions propriétaires identifiées
  6. Stratégie de delta et rollback de données testée
  7. Compatibilité ancien ↔ nouveau prouvée
  8. Restauration chiffrée exécutée
  9. Drainage HTTP chronométré

Sources officielles

Google · migrations avec changement d’URLWordPress · migrer un siteGoogle · performance dans les fonctions IAGoogle · contrôle d’inclusion dans les fonctions IAGoogle · optimiser pour les fonctions IA générativeBing · performance dans les réponses IAGoogle · mesure multidomaineIndexNow · protocoleGoogle · données structurées OrganizationVercel · configurer CORSLet’s Encrypt · IPv6Let’s Encrypt · CAAMDN · TLS et HSTSWHATWG · stockage web par origineDrupal · Migrate API et suivi des changementsDrupal · migrer depuis Drupal 7Drupal · versions prises en charge et calendrierCNIL · données personnelles en environnement de testCloudflare · contrôler le DNS avant migrationEDPB · responsable et sous-traitantGoogle Cloud · adresse IP sortante statiqueOWASP · TLS mutuelGoogle Cloud · drainage des connexionsMicrosoft · points de contrôle fonctionnelsGoogle Cloud · synchronisation de l’horlogeConfluent · évolution et compatibilité des schémasAWS · chiffrement des sauvegardes

Votre projet · 02:00

Transformez cette lecture en devis concret.

Choisissez ce qu’il vous faut. Le configurateur chiffre le site sans rendez-vous ni rappel imposé.