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 sur 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 vont former une page web visible sur le web.
Aller, 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 elle va afficher le contenu.
Pour faire un parallèle assez simple, on peut comparer le back et le front office à un restaurant. En effet, le front-office va représenter la table ou 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. Et enfin, l'API représente le serveur qui va apporter l'assiette de la cuisine à la table de 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 relier à 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 téléphone, 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 va envoyer vont se dispatcher sur différents types de supports comme ceux énoncés juste avant. Et, 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 utilisateurs ou encore l’interopérabilité. D’ailleurs, si vous ne les connaissez pas, découvrez les fonctionnalités de base d’un CMS. Aussi, 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 tache 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 construite 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 sites, car ils sont statiques. Cela signifie que les pages sont générées dans un fichier gardé en cache. À chaque lancement, le chargement est très court, car les données ne la page n’ont pas besoin de charger.
L’utilisation des technologies comme React ou Vue permettent de créer de belles interface 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 adapter partout.
Grâce au fait que le back-office et le front-office ne sont pas reliés, il y a une totale liberté sur la partie visible du site internet. Il est donc possible de travailler avec le langage ou les outils que l’on souhaite.
Toujours grâce au fait que la partie back et front ne sont pas liées, le risque d’attaques malveillantes vers la base de données est réduit surtout si vous utilisez un SASS comme Strapi.
Comme toute chose, les CMS headless ont des inconvénients. Le principal est la complexité et le coût pour faire du sur-mesure. Cela demandera plus de temps de développement que pour un CMS classique. Ensuite, certaines fonctionnalités ne sont pas adaptées pour ce type de CMS comme :
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 une 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 facile à scraper.
Inscrivez-vous à notre newsletter Flocon de neige et recevez nos derniers articles en rapport.
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ésumé les CMS headless, on peut dire que c’est l’avenir pour les entreprises voulant dispatcher 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 comment les pages sont construite. D'une 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é qu'un CMS headless possède un plus, c'est la possibilité de pouvoir créer plusieurs app avec le même contenu et ce, depuis le même CMS. Le reste est identique.
Tout dépend des outils que vous utilisez. Si vous souhaitez plus de personnalisation alors oui, c'est possible que le CMS headless soit plus coûteux. Si vous utilisez un CMS headless déjà tout prêt, les prix sont similaires.
Si vous utilisez des outils tout prêt, vous n'aurez que la partie front-end à maintenir (la partie visible). Donc 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 2 ont leurs avantages et leurs inconvénients. Si vous souhaitez créer une application web et mobile tout en souhaitant contrôler 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 vous intéresser également.
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.