Drupal et Wordpress : énième mise au point

Photo du bocal des développeurs agence bluedrop.fr
Nous n'avons rien contre Wordpress, nous reconnaissons ses qualités, et aussi ses faiblesses. Nous avons choisi Drupal. Cela n'empêche pas d'être sollicités et challengés sur ce choix. Voici la dernière mise au point, merci Ludovic :)

Il arrive encore, lors de sollicitations ou de conseils sur une architecture, qu'on nous demande pourquoi ne pas utiliser Wordpress plutôt que Drupal. Comme vous le savez, nous apprécions Drupal, avec ses qualités et ses faiblesses. Nous les découplons lorsqu'il ne fait pas correctement le travail... Nous choisissons les technos en fonction de leurs atouts mais surtout de leur maîtrise par l'équipe. Surtout, nous ne faisons pas de propagande. Wordpress est un excellent outil pour ceux qui le maîtrisent, pour certains projets. Force est de reconnaitre que nous ne sommes pas assez structurés pour cette typologie de projets.

Popularité

Des études récentes montrent que Wordpress propulse un quart du web mondial. La part de Drupal est elle bien plus faible mais si on se concentre sur les sites d'entreprises ou d'organisations de plus de 1000 salariés, les sites Drupal représentent alors 22% du secteur.

Les grandes entreprises et structures publiques plébiscitent Drupal plus que Wordpress pour sa robustesse et son évolutivité.

On remarque également que Drupal est le CMS par défaut de la grande majorité des institutions françaises (en gouv.fr).

Source : https://www.journaldunet.com/solutions/cloud-computing/1127709-drupal-triomphe-chez-les-grands-comptes-et-wordpress-chez-les-pme/ 

Cibles

Wordpress est historiquement un moteur de blogs, dont on pourrait dire qu'il a été dépassé par son succès en devenant une solution extrêmement populaire pour les petits sites type "site vitrine" et même certaines grosses structures.

A l'inverse, Drupal est depuis sa création une solution généraliste qui demeure ouverte et ne présuppose aucun type de site. On parle souvent de Drupal comme un CMF (Content Management Framework) et non comme un CMS (Content Management System). Drupal peut faire du site vitrine, du blog, de l'intranet, de l'e-commerce, du forum, du réseau social d'entreprise etc.

Cette grande souplesse peut être intimidante de prime abord par rapport à des solutions plus orientées, mais à moyen terme c'est un avantage. Drupal est un CMS sur lequel on peut capitaliser et construire. D'autres solutions (WordPress, Joomla) sont plus immédiates mais plus difficiles à faire évoluer.

Il est vrai que depuis la version 3.0 de WordPress, les créateurs de la solutions s'orientent vers un produit lui aussi plus généraliste, mais il traîne encore les limitations de ses origines "blog".

Ecosystème et sécurité

Drupal et Wordpress sont 2 solutions open source qu'il est possible d'étendre par :

  • Des plugins dans la terminologie Wordpress ;
  • Des modules pour Drupal.

Les 2 univers offrent un grand nombre d'extensions avec un avantage en nombre pour Wordpress.

Mais, à la différence de Drupal où les modules payants sont très rares (et peu usités), beaucoup de plugins WordPress sont payants. Notamment si on désire avoir un site multilingue complexe et performant, pouvoir personnaliser ses contenus (ajouter des champs de saisies, etc.) - il faut disposer des version "pro" de certains plugins.

Le multilinguisme et la création de nouveaux types de contenus sont des fonctionnalités intégrées par défaut pour Drupal.

Wordpress est très souple dans sa politique d'acceptation de plugins sur le site officiel. Cela a pu dans le passé créer quelques gros problèmes de sécurité (code malicieux inséré à dessein dans des plugins ou thèmes gratuits), ou des déconvenues lorsque du jour au lendemain un plugin payant s'arrête à cause d'un événement étranger (rachat ou ou liquidation.)

A l'inverse il est bien plus difficile de publier un module sur le site drupal.org. Il est audité par la communauté et il y a un véritable contrôle qualité qui est effectué avant qu'il ne puisse apparaître dans le listing officiel, plus encore pour disposer du label "security advisory coverage".

Les 2 CMS font beaucoup d'efforts pour être des solutions sûres en terme de sécurité. Nous pensons que Drupal garde un avantage certain sur les modules externes et par l'extrême réactivité de son équipe dédiée aux failles de sécurité.

Le revers de la médaille pour Wordpress c'est que sa part de marché (25%) en fait une cible facile et attractive pour les hackers.

Ergonomie

Wordpress est souvent cité comme un modèle d'ergonomie utilisateur en back-office et cela est mérité. Cette simplicité va de pair avec le périmètre fonctionnel simple de la plupart des sites réalisés avec ce CMS. Un site Wordpress complexe n'évitera malheureusement pas un back-office compliqué.

Le back-office Drupal, plus intimidant, est moins abordable initialement mais il est entièrement configurable et peut être simplifié en fonction des profils utilisateurs. Il est le reflet de sa puissance fonctionnelle dont certains points ne peuvent pas être facilement simplifiés. Il est structuré pour être évolutif.

Depuis la version 8 du CMS, de gros efforts au niveau communautaire sont réalisés pour améliorer l'ergonomie du back-office et offrir une expérience utilisateur fluide.

Plus d'informations : https://www.drupal.org/about/strategic-initiatives/admin-ui-js
Vous pouvez aussi consulter nos pratiques pour améliorer l'expérience de contribution : 
Améliorer l'expérience de la contribution : du confort dans le backoffice Drupal (mars 2021) -
Personnalisation du backend de Drupal 8 - Solutions et astuces (juillet 2020) -

"Oui mais il y a Gutenberg et ses paragraphes pré-configurés dans le cloud !!"

C'est vrai, il y a cette initiative très populaire et très pratique pour les contributeurs. Rendre nos clients et projets dépendants d'une bibliothèque stockée dans le cloud, nous l'avons toujours déconseillé. Mais il existe maintenant aussi dans l'éco-système Drupal et nous reviendrons prochainement sur les avantages qu'il apporte en matière d'efficacité et de standards par rapport à une suite modulaire telle que Layout Paragraphs et Paragraphs.

Découplage / Interfaces

C'est un sujet important aujourd'hui et les 2 solutions mettent le fait de pouvoir fonctionner comme une API de génération de contenu à destination :

  • D'une application mobile ;
  • D'autres services ;
  • D'un site dit "headless" comme une SPA (single page application) ou une PWA (progressive web app).

Drupal s'est défini depuis la version 8 comme un "API first CMS" et toutes ses ressources (contenus, utilisateurs, commentaires) peuvent être exposées sans développements ou modules additionnels comme une API REST JSON ou XML.

Drupal offre un "framework" extensible pour créer toutes sortes d'API et étendre simplement son fonctionnement par défaut. Il concurrence bien plus, à ce titre, des outils comme Contenful CMS, Strapi, GraphCMS ou Prismic

Évolutivité / Standard et industrialisation / Maintenance

Comme nous l'avons déjà évoqué, Wordpress souffre selon nous de son orientation initiale en tant que moteur de blogs (à nuancer depuis les dernières versions) mais s'il offre de grandes facilités au démarrage, sa structure le rend difficile à faire évoluer.

Depuis la version 8, Drupal est entièrement basé sur un des 2 frameworks PHP leaders dans l'industrie : Symfony. Il utilise également d'autres solutions standards pour la gestion de ces dépendances, son moteur de templating etc.

Enfin, il existe tout un écosystème de modules contribués (Migrate) permettant la reprise des contenus et utilisateurs à partir d'une version antérieure.

Alors...

Pour toutes ces raisons, nous continuerons à utiliser en exclusivité Drupal pour nos projets. Nous le découplerons chaque fois que nécessaire avec des outils plus performants quand nous penserons que c'est nécessaire... Et nous continuerons à surveiller l'évolution de Wordpress de loin en loin, mais avec bienveillance.