Dans cet article, nous décryptons pour vous ce qu’est un CMS headless et pourquoi il est intéressant de penser à cette technologie pour les nouveaux sites à développer.

Alexis Le Baron
Avant toute chose, revenons sur le CMS classique. Un CMS est un outil en ligne permettant de créer simplement un site web, avec ou sans connaissances techniques. L’idée est simple : on ajoute du contenu dans le back-office du CMS. Ensuite, ces données sont traitées et ajoutées dans des blocs. Enfin, les blocs disposés les uns au-dessus des autres forment une page visible sur le web.
Passons maintenant à notre sujet du jour : les CMS headless !
Pour expliquer simplement, un CMS headless est un CMS qui sépare la partie back-office, responsable de la création, de la gestion et du stockage des données, de la partie front-office qui va afficher le contenu.
Pour faire un parallèle assez simple, on peut comparer le back-office et le front-office à un restaurant. En effet, le front-office va représenter la table où le client va s’asseoir, tandis que la partie back-office représente la cuisine et toute la cuisson des plats, partie essentielle pour que le restaurant puisse satisfaire ses clients. Enfin, l’API représente le serveur qui va apporter l’assiette de la cuisine à la table du restaurant.
Ce principe de CMS headless est basé sur deux choses :
Un CMS headless est donc un outil back-office permettant de créer des sites internet. Le terme « headless » signifie « sans tête ». Cela implique tout simplement que le CMS n’est pas relié à sa tête, ou, en d’autres termes, le CMS n’est pas relié à la partie visible du site internet.
Le but premier d’un CMS headless est de créer de la donnée qui est ensuite stockée dans une base de données et injectée sur du front-office grâce à une API. Cette technologie est de plus en plus utilisée, car aujourd’hui les données des sites internet ne sont pas seulement visibles sur le web, mais aussi sur les téléphones, grâce à des assistants virtuels, sur des casques de réalité virtuelle ou encore sur des tableaux de bord de voiture. Toutes les données que l’API enverra se répartiront sur différents types de supports comme ceux énoncés juste avant. Selon l’évolution du site, on peut ajouter de multiples supports de diffusion.
Avec cette technologie, on peut gérer plus de contenu et le diffuser sur de nombreux supports à l’infini.
Comme un CMS classique, le CMS headless dispose de fonctionnalités essentielles, comme la rédaction et la gestion du contenu, les permissions des utilisateurs ou encore l’interopérabilité. D’ailleurs, si vous ne les connaissez pas, découvrez les fonctionnalités de base d’un CMS. De plus, d’un point de vue utilisateur, l’utilisation d’un CMS classique ou d’un CMS headless est la même.
Cependant, contrairement au CMS classique, le CMS headless ne permet pas, ou très rarement, de définir le style du site Internet. C’est-à-dire les couleurs ou la mise en page des blocs. Cette tâche est généralement confiée à la partie front-office.
| CMS CLASSIQUE | CMS HEADLESS |
|---|---|
Contient tout le code back-end en back-office. | Contient uniquement le code back-end en back-office |
Le front-end (HTML, CSS, Javascript) est interne au CMS et se trouve avec le back-end. | Le front-end (HTML, CSS, Javascript) est externe au CMS, dans une app web ou mobile par exemple. |
— | Possède une API pour que le front-office puisse récupérer les données. |
— | Permet de créer plusieurs sites sur différents supports avec les mêmes données. |
Le CMS headless permet de construire plusieurs sites ou applications web depuis un seul et même CMS. Cela permet d’afficher un contenu identique à la fois sur un site Internet et une application mobile par exemple.
Les sites construits avec un CMS headless sont plus performants que les autres, car ils sont statiques. Cela signifie que les pages sont générées dans des fichiers mis en cache. À chaque ouverture, le temps de chargement est très court, car la page n’a pas besoin de charger les données.
L’utilisation de technologies comme React ou Vue permet de créer de belles interfaces front-end modernes et dynamiques.
Étant donné que l’on peut relier de multiples front-offices à un CMS headless, son utilisation est à l’épreuve du temps. Un contenu sauvegardé en back-office pourra être utilisé et adapté partout.
Étant donné que le back-office et le front-office ne sont pas reliés, la partie visible du site Internet est totalement libre. Il est donc possible de travailler avec le langage ou les outils que l’on souhaite.
Du fait que les parties back-end et front-end ne sont pas liées, le risque d’attaques malveillantes visant la base de données est réduit, surtout si vous utilisez un SaaS comme Strapi.
Comme toute chose, les CMS headless ont des inconvénients. Le principal est la complexité et le coût liés au sur-mesure. Cela demandera plus de temps de développement que pour un CMS classique. Ensuite, certaines fonctionnalités ne sont pas adaptées à ce type de CMS :
Aussi, étant donné que le CMS headless est récent, le plus ancien datant de 2011, il y a moins de plug-ins disponibles. Enfin, la partie front-office peut vite devenir longue et difficile à développer par rapport à un CMS classique. En effet, sur un CMS classique, il suffit d’ajouter des variables alors que sur un CMS headless, il faut récupérer des données via l’API et les ajouter.
Il faut aussi savoir que toutes les données du site récupérées depuis l’API sont accessibles et donc peuvent être faciles à scraper.
Inscrivez-vous à notre newsletter « Flocon de neige » et recevez nos derniers articles.
| STRAPI | DIRECTUS | CONTENTFUL | WAGTAIL + STRABERRY | HYGRAPH | |
|---|---|---|---|---|---|
Open Source | Open Source | Propriétaire | Open Source et sur-mesure | Propriétaire | |
2016 | 2004 | 2011 | 2015 | 2015 | |
France | USA | Allemange | Angleterre | Allemange | |
Gratuit sans l'hébergement | 25$ avec hébergement | Gratuit avec hébergement classique | Gratuit | Gratuit avec hébergement classique | |
Pour résumer, on peut dire que les CMS headless sont l’avenir des entreprises souhaitant diffuser un contenu unique sur de multiples supports. Et même si cette technologie est assez récente, il existe aujourd’hui de nombreux outils et développeurs travaillant sur ce sujet.
Non. Tout dépend de la façon dont les pages sont construites. De façon générale, un CMS headless produit des pages plus performantes qu’un WordPress, mais il y a beaucoup d’exceptions.
La seule fonctionnalité supplémentaire qu’un CMS headless offre est la possibilité de créer plusieurs applications à partir du même contenu et depuis le même CMS. Le reste est identique.
Tout dépend des outils que vous utilisez. Si vous souhaitez davantage de personnalisation, alors oui : il est possible que le CMS headless soit plus coûteux. Si vous utilisez un CMS headless déjà prêt, les prix sont similaires.
Si vous utilisez des outils tout prêts, vous n’aurez à maintenir que la partie front-end (la partie visible). Ainsi, la maintenance est divisée par 2. Si vous utilisez un CMS headless sur-mesure, la maintenance est identique à celle d’un CMS classique.
Non. Les deux ont leurs avantages et leurs inconvénients. Si vous souhaitez créer une application web et mobile tout en contrôlant le contenu, alors oui, le CMS headless est fait pour vous. Si vous souhaitez uniquement un site Internet simple, un CMS classique est peut-être mieux adapté.
Le sujet des CMS vous fascine ? Alors ces articles devraient également vous intéresser.

Anne-Laure Compain

Alexis Le Baron

Alexis Le Baron

Alexis Le Baron

Alexis Le Baron

Alexis Le Baron
Recevez les dernières nouveautés et astuces sur les CMS directement dans votre boite e-mail.