Dad 3.0

Une page du Blog Dad 3.0

Migration de Drupal à WordPress, pourquoi et comment

Par Dad 3.0, 14/05/2013

Visuellement, il m’est impossible de le cacher. Là Bas Land a en effet migré vers WordPress.

Il y a 3 ans, Là Bas Land a basculé sous Drupal. La version 6 pour être précis. La version 7 est disponible depuis un certain temps et est suffisamment mature et oui, une montée de version a été envisagée. C’est c’est même ce qui a, en quelque sorte, participé à déclencher la migration vers WordPress. Non pas que Drupal en lui même est un mauvais gestionnaire de contenu, très loin de là. Il s’agit comme d’habitude d’adapter l’outil au besoin.

Je vais vous faire profiter ici du retour d’expérience sur la réflexion ayant conduit à cette migration et sa conduite. Je ne rentrerai pas dans des détails techniques, pour cela, le web fourmille d’informations que vous trouverez plus adaptés à votre cas.

L’état des lieux

Une intervention sur le moteur d’un site web implique un investissement à long terme. Il est important de savoir où l’on est et vers où on souhaite aller. Ainsi, si aujourd’hui les Blogs sont à l’honneur, j’aime considérer Là Bas Land comme un site. La différence entre un blog et un site est dans la structure. D’un point de vue sémantique, un Blog est un site web. C’est le type de publications et leur présentation qui le spécialise en Blog. De ce fait un blog peut n’être qu’une composante d’un site web plus complet, au même titre qu’un forum par exemple.

Le contenu de Là Bas Land comporte des publications qui ne devraient pas être de simples billets rangés dans un flux chronologiques. Tout ce qui est tuto devrait pouvoir être accessible de manière structurée. C’est cette réflexion qui m’a conduit à favoriser un CMS comme Drupal, généraliste, et qui permet naturellement de créer différents types de documents et de structures. Ainsi, certaines publications le sont sous forme d’article, d’autres sous forme de billets de blog. Quelques pages forment aussi le type Livre. Dans la pratique, pour le visiteur, ça ne change rien. L’ensemble apparait dans le flux et la distinction du type de document est très subtile.

Aujourd’hui, les visites sur Là Bas Land viennent soit des réseaux sociaux où le contenu aura été promu, soit des liens où du contenu aura été cité, soit des moteurs de recherche. La consultation ne va pas se faire en suivant un fil narratif mais en suivant des centres d’intérêt. La navigation ne dépend donc pas d’une structure que l’on aura imposé au visiteur, ce qui laisse assez de souplesse quand au choix de l’outil.

Depuis un peu plus d’un an, j’ai également essayé d’internationaliser ce site. Dans la pratique, cela s’est révélé un brin pénible sous Drupal (c’est tout aussi insatisfaisant quel que soit la plate-forme) au point à me faire lancer Geekgarage durant l’été 2012. Dans un premier temps, il s’agissait d’un projet avec un besoin particulier qui n’était satisfait que par des extensions disponibles sous WordPress. Geekgarage, m’a donc permis de mettre les deux plate-formes en compétition.

Les besoins

Le besoin autour de Là Bas Land est de se concentrer sur le contenu avec peu de ressources pour la maintenance. Cela signifie pouvoir publier facilement du contenu tout en ayant à l’esprit que le contenu ne se limite pas à du texte mais également à des média. En parallèle, les opérations de maintenance tel que les mises à jour doivent être le plus simple possible.

Pourquoi être passé à WordPress

Les besoins exprimés ci-dessus suffisent pour comprendre lorsqu’on connait les deux outils.

Sur la maintenance tout d’abord, il n’y a aucune comparaison possible. Mettre à jour une extension sur WordPress se fait en une sélection et un click. Sur Drupal, elle est manuelle. Elle nécessite de récupérer l’archive, l’extraire, mettre le site en maintenance, remplacer les fichiers du module sur le serveur, exécuter la mise à jour de la base et si tout s’est bien passé (pour ma part, tout s’est toujours bien passé), on peut remettre le site en ligne. La complexité sous Drupal est en elle même importante, mais elle nécessite aussi d’avoir un accès sur le serveur hébergeant Drupal. De plus, la recherche d’extension est plus complexe pour Drupal. Il n’y a pas de moteur de recherche sur l’interface d’administration, et, peut être uniquement de manière subjective, les extensions semblent moins à jour que pour WordPress.

La publication ensuite, qui est l’activité principal s’un tel outil (pour l’éditeur). Drupal vient avec un éditeur basique, et je n’ai jamais été satisfaits des éditeurs WYSIWYG disponibles, même TinyMCE qui est celui intégré à WordPress. Dès l’édition, WordPress se révèle plus efficace. Oui, des experts Drupal m’expliqueront certainement que j’aurai pu trouver un éditeur équivalent. J’y ai passé un certain temps, mais rechercher un outil qui fonctionne est autant de temps passé à ne pas produire du contenu. Mais un bon éditeur n’est pas suffisant, il faut aussi gérer les ressources attachées au texte. Drupal ne dispose pas non plus d’outils de ce type out of the box. La simple inclusion et positionnement d’image est fastidieuse, on ne parle même pas de gestion des média. En comparaison, WordPress propose immédiatement tout ce qui est nécessaire : la gestion des médias, l’inclusion d’images et la génération de gallerie.

Au final, les raisons de quitter Drupal sont la complexité de gestion d’une part et de publication d’autre part. Drupal n’est pas insurmontable, mais est trop gourmands en temps pour ces tâches qui sont en elle même non productives. Ces reproches sont souvent exprimés à l’encontre de Drupal.

Ainsi, si je dois choisir un outil à mettre en place rapidement pour publier efficacement, WordPress est le meilleur choix. La flexibilité de Drupal n’a un intérêt que dans les cas où on dispose des ressources et moyens de la valoriser. Je regrette la possibilité de créer des types de documents et de présentation (gestion des blocks) de Drupal, mais vis à vis de l’investissement nécessaire, ils n’auraient jamais été correctement exploités. Drupal est un outil de choix pour les contenus exigeant différents types de contenu et une grande flexibilité, mais qui sont aussi prêt à mettre les moyens pour valoriser ce contenu.

Réalisation d’une migration

Une migration, c’est comme un déménagement : c’est le moment de se débarrasser des encombrants et de revoir l’agencement de certaines pièces. Et pour un site/blog, c’est revoir la pertinence des articles. Un des objectifs principaux d’un blog est d’être lu, et pour cela il doit être référencé. La migration a été donc l’occasion de revoir les différents articles avec un oeil plus expérimenté sur l’optimisation de l’indexation auprès des moteurs de recherche. Ainsi, une partie des articles a été revu, certains titres et URLs reformulés et toute la qualification des article a été remise à plat. Ceci fait que la migration ne s’est pas résumé en une requête d’extraction suivi d’une insertion.

Outre l’édition de la plupart des articles, la migration a été l’occasion d’une réorganisation. J’ai abandonné l’idée d’internationaliser Là Bas Land en lui même et les articles en anglais ont été déplacé, en fonction de leur contenu, vers Geekgarage ou Darko Stankovski Photography. Pour le reste, la qualification a été entièrement revue. Drupal qualifie le contenu grâce aux taxonomie, un ensemble de vocabulaires. Conceptuellement, c’est une très bonne idée, mais très complexe à implémenter. L’affectation par catégories et mots clefs, même si moins souple par certains aspects, est finalement plus simple à gérer.

Enfin, Drupal et WordPress étant deux plate-formes différentes, les extensions sont différentes et des métadonnées attachées aux articles sont gérées différemment. Il est donc nécessaire de repasser par tous les articles.

Un site qui a vécu est un site qui a été référencé. Il est donc indispensable de s’assurer que les liens existant ne sont pas rompus et de définir les redirections nécessaires. Cette étape est indispensable pour ne pas perdre son classement dans les moteurs de recherche.

Ce retour d’expérience est valable pour le cas particulier de ce site tel qu’il est organisé. Un autre site, une autre organisation, et ce sera un autre besoin.



Intermède publicitaire


Licence Creative Commons

Licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Pas de Modification 4.0 International

.