WordPress ou Strapi ? Choisir le bon CMS en 2022

WordPress est le système de gestion de contenu (CMS) éprouvé, souvent considéré comme la meilleure solution (et la plus populaire). Il permet à pratiquement tout le monde de modifier, de créer et de mettre à jour le contenu d’un site Web. Strapi, quant à lui, est le dernier né des systèmes CMS « sans tête » de nouvelle génération, qui permet aux développeurs d’économiser beaucoup de temps et d’énergie. Faire le choix entre les deux est une décision complexe à la convergence des exigences commerciales et des préférences des développeurs. 

CMS headless, découplé et couplé

Tout d’abord, examinons l’évolution des systèmes CMS. Le web a connu de nombreuses applications CMS (systèmes de gestion de contenu), mais elles peuvent être regroupées en trois grandes catégories, en fonction de ce qu’elles visent à réaliser.

Les systèmes de gestion de contenu sans tête ont gagné en popularité grâce au développement abondant de la technologie Jamstack. Head signifie le front-end. Lorsque vous optez pour un CMS headless, vous vous retrouvez très probablement avec une base de données, un backend standard et une forme d’interface de tableau de bord pour la gestion du contenu. Le contenu est exposé via une API sans aucune responsabilité quant à la façon dont il est affiché. Naturellement, l’étape suivante consistera à choisir une couche technologique frontale pour le rendu du contenu basé sur l’API consommée, par exemple dans le riche écosystème ECMAScript, JavaScript (ES, JS) et TypeScript (TS).

Pour les solutions découplées, la situation est subtilement différente. Dans ce type d’architecture, l’application de gestion de contenu permet non seulement de saisir et de modifier le contenu, mais aussi de contrôler partiellement la présentation de ses données (par exemple, via un éditeur WYSIWYG). Contrairement aux systèmes CMS traditionnels, la communication avec les CMS découplés s’effectue à partir d’une base de données intégrée via une API, ce qui vous permet de construire des services distribués. Une telle approche du CMS est plus évolutive et efficace que celles basées sur le couplage, bien qu’elle reste largement dépendante du frontend push de la couche de présentation du CMS lui-même.

Dans le cas des applications CMS couplées, le système possède chaque requête entrante. Chaque demande est traitée par le CMS, qui la met en correspondance avec le contenu et les modèles et renvoie le résultat. La gestion du contenu et de la présentation a lieu dans le même système, qui peut être décrit comme full stack (donc à la fois frontend et backend) ou monolithique. Cela fait que les systèmes de gestion de contenu couplés posent des limites en termes d’évolutivité et de distribution et, comme tout cadre, peuvent finir en cage.

Strapi – Le CMS Headless

Strapi est un CMS open source de type headless. Il s’agit d’un framework relativement jeune, publié pour la première fois sur GitHub en 2015. Par rapport à l’utilisation mondiale des systèmes et des frameworks de gestion de contenu, Strapi représente moins de 0,1 % en valeur absolue et en part de marché. Cependant, le nombre d’implémentations n’a cessé d’augmenter au fil du temps.

Strapi offre un haut niveau de granularité pour construire votre propre API (interface de programmation d’application) même sans expertise dans le domaine des technologies backend. Cela s’applique à la fois à la configuration des types de contenu, des champs, des composants et, bien sûr, à la création du contenu lui-même et à sa gestion dans un seul tableau de bord. Il est également totalement indépendant de l’éditeur de code que préfère le développeur.

Avantages et inconvénients de Strapi

strapi

Migrer d’un CMS monolithique

Strapi offre une grande flexibilité et une modélisation très granulaire (de bas niveau) des API, qui peuvent être créées par ce logiciel. Il présente quelques inconvénients lorsqu’il s’agit de migrer des données et une structure à partir de CMS classiques (comme WordPress). Dans la plupart des cas, un CMS headless nécessite une solution dédiée (donc du développement de code supplémentaire).

Le processus implique la création d’une structure de données dans l’API Strapi et, plus tard, un type de middleware qui traduit les données et la structure du CMS traditionnel vers Strapi. Toutefois, cet inconvénient n’est qu’une conséquence des caractéristiques de Strapi qui permettent un contrôle approfondi de chaque détail des données et de la structure à un niveau très bas. Cela signifie que même les modifications les plus subtiles ou les plus importantes peuvent être effectuées facilement et, surtout, de manière indépendante lorsque l’on travaille avec plusieurs équipes.

Changements fréquents

L’application est mise à jour assez fréquemment. Il s’agit d’améliorations, de corrections de bogues et de nouvelles fonctionnalités, ce qui est excellent pour la sécurité générale et l’avenir, mais dans de rares cas, cela peut entraîner des changements qui cassent les API déjà développées.

Par exemple, la dernière version Major v4 a modifié la structure de la base de données au quatrième trimestre 2021, et les instructions de migration depuis la v3 sont prévues pour mars 2022. Ceci est susceptible de changer dans un avenir proche, Strapi devenant plus stable et mature avec le temps.

Support de TypeScript

TypeScript est un langage de programmation typé, qui a fait ses preuves dans la maintenance et le développement d’implémentations complexes et à grande échelle. Malheureusement, Strapi ne le supporte pas sans modifications personnalisées. Il est prévu de l’introduire dans le noyau, mais il n’y a pas encore de date précise pour cette fonctionnalité.

CI/CD

Le développement et l’hébergement de Strapi en production nécessitent des ressources DevOps légèrement plus sophistiquées par rapport aux CMS traditionnels comme WordPress fonctionnant sur PHP et Apache ou Nginx. Cela rend également nécessaire la mise en œuvre de processus d’intégration et de développement continus, ce qui contribue à améliorer la stabilité de la base de code et la maintenance dans le temps.

WordPress – Le CMS monolithique

WordPress est un système de gestion de contenu de type couplé open source CMS utilisé par des millions de développeurs dans le monde. L’ampleur du nombre de personnes qui l’utilisent et le maintiennent représente plus de 43 % de l’utilisation des CMS par rapport aux autres solutions. Il revendique plus de 65 % de parts de marché dans le monde [6]. WordPress date de 2003 et est resté depuis l’un des choix les plus populaires pour la diffusion de contenu.

WordPress peut être considéré comme un CMS véritablement traditionnel, couplant le frontend et le backend à partir d’un tableau de bord et de Gutenberg (sorte d’éditeur WYSIWYG, alimenté par React.j ) [7]. Même si de nombreux développeurs pro-Strapi sont d’avis que la technologie de base de WordPress est dépassée, il n’y a en fait aucune limite à sa transformation en un système découplé ou headless, grâce à l’API REST native [8] et à la prise en charge de l’interface GraphQL par la communauté [9].

Avantages et inconvénients de WordPress

wordpress

Compatibilité ascendante

WordPress a constamment progressé dans le développement de sa plateforme et prend en charge PH , y compris les versions marquées comme dépréciées. Cela garantit que chaque site Web alimenté par WordPress fonctionnera comme prévu, quel que soit l’hébergeur que vous utilisez. Cela signifie également que votre thème et vos plugins continueront à fonctionner même après la mise à jour de WordPress vers la dernière version.

À long terme, une plateforme stable signifie que votre site Web est moins sujet aux temps d’arrêt, mais en même temps, il peut être vulnérable aux attaques et à la dégradation des performances en raison de l’obsolescence du code.

Polyvalence des applications

Le CMS WordPress était à l’origine une simple plateforme de blogs. Cependant, les API de modèles et de plugins, combinées à une énorme communauté de développeurs, ont donné lieu à une base de code abondante de fonctionnalités étendues permettant de construire sur ce CMS presque n’importe quel type d’application web – allant d’un site web d’une seule page à une boutique de commerce électronique à part entière avec traitement des paiements et gestion des stocks.

La disponibilité de nombreux thèmes et plugins sous la forme d’assistants visuels (appelés Page Builders), permet la création de sites Web entiers par des personnes non techniques, à l’aide de nombreux modèles prédéfinis et de contenus thématiques.

Toutefois, de nombreuses applications WordPress « maison » restent lentes, vulnérables aux exploits et ne montrent généralement pas tout le potentiel de la technologie. Il existe de nombreux exemples de sites WordPress médiocres, qui sont souvent utilisés comme exemples pour aller au-delà des simples applications monolithiques.

Documentation complète et base de code étendue

L’une des caractéristiques les plus importantes influençant le choix d’une technologie lors de la création de projets est son développement et le soutien technique apporté par les auteurs et la communauté utilisant la plate-forme. À cet égard, la documentation détaillée, claire et conviviale pour les développeurs de WordPress, avec de nombreux cas d’utilisation de ce CMS, peut constituer un bon exemple à suivre [10]. La communauté derrière WordPress est importante et capable d’aider à résoudre de nombreux problèmes.

D’autre part, la faible barrière à l’entrée attire de nombreux amateurs vers WordPress. Il en résulte que de nombreux sites sont construits en utilisant de mauvaises pratiques (par exemple, des modèles de sites Web prêts à l’emploi et des plugins de qualité douteuse). La vaste gamme de thèmes et de plugins qui étendent les fonctionnalités de WordPress ne suit pas toujours les meilleures pratiques de développement et peut présenter un risque de dette technologique si elle n’est pas utilisée à bon escient.

Alors, Strapi ou WordPress ?

wordpress-ou-strapi

Quelle que soit la popularité d’une architecture logicielle donnée, suivre le battage médiatique n’est jamais la bonne façon de prendre une décision. Tout dépend des besoins de l’entreprise, des préférences des développeurs eux-mêmes et des conditions que vous souhaitez mettre en place pour votre croissance future.

L’argument en faveur de WordPress

Par exemple, si vous êtes propriétaire d’une entreprise familiale, d’une entreprise individuelle, ou si vous souhaitez rester sur une plateforme bien connue de votre choix, WordPress peut être une meilleure solution que Strapi, car il vous permet de créer un site d’entreprise complet en quelques heures – et de le maintenir facilement au fil du temps.

Si vous avez besoin d’un système de commerce électronique avec un faible coût de démarrage et un faible coût de possession avec moins de mille produits, WordPress avec WooCommerce peut être un excellent choix.

En tant que développeur qui aime les technologies frontales telles que React.js ou Vue.js, WordPress permet un fonctionnement sans tête ou découplé (via l’API REST ou GraphQL), de sorte que vous n’aurez pas à vous soucier de l’influence des opérations backend sur la vitesse de chargement des pages frontend.

L’argument en faveur de Strapi

Strapi est plus adapté lorsqu’il s’agit d’une approche strictement « headless« , d’une évolutivité illimitée et de personnalisations dans les moindres détails. En raison de la complexité des applications web actuelles et des méthodes de diffusion du contenu, souvent basées sur des microservices, les entreprises ont tendance à utiliser des solutions headless pures pour le CMS accompagnées de technologies frontales matures pour la couche de présentation.

Pour les grandes équipes de développeurs, Strapi peut offrir des expériences de développement exceptionnelles, en décomposant les projets et le travail en petits morceaux qui améliorent la productivité et les délais de commercialisation. Strapi s’adapte à un large éventail d’applications, d’outils et de technologies polyvalents, de sorte que les développeurs ayant des objectifs ou des buts différents pourraient préférer Strapi comme moyen d’unifier le travail.

Avec le temps, il est très probable que la base de code de Strapi (avec ses plugins open-source gérés par la communauté) suive un chemin similaire à celui de WordPress. Il est possible que Strapi devienne plus accessible aux personnes non techniques avec le temps, ce qui pourrait augmenter son adoption et en faire un concurrent direct de WordPress.

Le mot de la fin

WordPress et Strapi sont deux solutions similaires qui répondent à un même besoin final : celui de créer un site web. Pour déterminer quel CMS choisir aujourd’hui en 2022, cela va surtout dépendre de vos besoins personnels. Si vous êtes une petite entreprise en développement, un site réalisé sous WordPress peut vous suffire largement et vous serez très satisfait. Au contraire, si votre entreprise a des besoins plus spécifiques, s’il faut développer des fonctionnalités particulières… alors Strapi sera plus adapté à votre projet. Il nécessite plus de compétences mais il répondra mieux à vos besoins.

Vous voulez en savoir plus sur l’utilisation de WordPress ou Strapi pour faire sortir votre projet de la planche à dessin ? Contactez-nous !

Vous avez un projet en tête ?

Discutons-en ! 

Découvrez nos autres articles de blog

WordPress Vs JAMstack

WordPress Vs JAMstack

On départage Wordpress vs Jamstack pour déterminer quelle est la meilleure option pour créer un site web rapide, sécurisé et simple à développer.

lire plus
Loading...