Un CMS headless sépare le référentiel de contenu de la couche de présentation front-end. Le contenu est stocké sous forme de données structurées et diffusé via une API, indépendamment de la manière dont il sera affiché ou de l’endroit où il le sera.
Dans un système de gestion de contenu traditionnel, le contenu et la présentation coexistent au sein d’un même système. Lorsque vous modifiez le contenu, le modèle s’adapte en conséquence. Un système de gestion de contenu headless met fin à cette dépendance.
Le terme « headless » fait référence à la suppression de la « tête », la couche d'affichage front-end, du corps du CMS. Il ne reste alors qu'un référentiel de contenu structuré qui stocke les entrées sous forme de données, indépendamment de la manière dont elles seront affichées ou de l'endroit où elles le seront. L'application front-end d'un développeur interroge ce contenu via des API REST, des API GraphQL (ou les deux) et le rend selon ses propres règles de conception.
Au cœur de tout CMS headless se trouve le modèle de contenu : un ensemble de types de contenu structurés qui définissent les champs, les relations et les formats de chaque entrée. Comme ces types ne comportent aucune hypothèse visuelle, la même entrée de contenu peut s'afficher différemment selon le canal qui la consomme.