Qu’est-ce qu’un CMS
CMS - Content management system (système de gestion de contenu), en gros un système pour gérer un site web ; WordPress est le plus connu.
Pourquoi pas WordPress
Je ne veux pas utiliser WordPress parce que je n’aime pas l’expérience de développement d’interface. Je préfère la voie du code. Cependant, j’aime la simplicité qu’il offre pour écrire des articles de blog et la puissance que lui confèrent tous ses plugins. Mais si vous n’avez pas besoin de beaucoup de choses, un simple site statique gratuit est tout ce qu’il vous faut, 9 $ US par an, sans besoin de serveur.
Ajoutez maintenant un CMS open source et vous êtes prêt.
Trouver le CMS
J’ai navigué entre plusieurs CMS ces derniers mois, comme Tina, Netlify et Sanity.
Le CMS que j’utilise en ce moment est Tina, je le trouve correct. Mais le modèle que j’ai utilisé avec Astro a quelques problèmes par-ci par-là. Ce n’est pas vraiment une navigation tranquille, mais au moins, ça fonctionne.
Essentiellement, je voulais juste un blog simple sous forme de site statique. J’utilisais Netlify (Decap) avec mon site 11ty, mais je voulais essayer quelque chose de nouveau, alors j’utilise maintenant Astro avec Tina pour l’expérimenter.
Ce que j’aurais aimé savoir
Comme je passais en revue TOUS les CMS que les gens recommandaient sur Reddit, je suis tombé sur Sanity et Payload.
J’aurais aimé connaître la différence entre un CMS headless et un CMS non headless.
CMS headless VS CMS non headless
Ce que Sanity et Payload font différemment, c’est qu’ils sont headless.
Un CMS headless signifie que le contenu (par exemple les articles de blog, les pages) est séparé de votre front-end. Les données sont stockées sur un serveur, soit auto-hébergé, soit hébergé sur leur cloud. Et votre front-end se contente d’appeler l’API pour récupérer ces données au format JSON.
Avec un CMS non headless comme ceux que j’ai utilisés - Netlify ou Tina CMS fonctionnent sans serveur. Le système « admin » vous montre simplement les données de votre site et y apporte des modifications directement, puis reconstruit tout le projet pour la production. De plus, les articles de blog sont écrits en markdown, donc chaque fois que vous écrivez un nouvel article, un nouveau fichier .md apparaît dans votre dossier source.
Donc l’un avec un serveur, l’autre sans. L’un utilise sans doute JSON, et l’autre Markdown.
Et bien sûr, celui sans serveur est plus facile à configurer et coûte moins cher à faire tourner dans la plupart des cas.
Ce que je ne comprends pas
Il y a tellement de CMS, j’en ai déjà omis un grand nombre. Chacun fonctionne un peu différemment mais globalement de la même manière.
Je comprends pourquoi les gens se tournent simplement vers WordPress. Il a une longue histoire, tout le monde sait l’utiliser, et il est puissant et évolutif, que ça vous plaise ou non.
Parmi les alternatives, Sanity est sympa parce qu’il propose un palier gratuit généreux sans avoir à héberger son propre backend. Pour la facilité d’utilisation, Netlify et Tina feraient peut-être l’affaire. Mais quand on veut évoluer, Sanity semble être une meilleure option. Ou vous pouvez revenir à WordPress.
Cependant, ce que je ne comprends pas, c’est que, headless ou non, markdown ou non, quelle importance cela a-t-il à long terme ?
Vraisemblablement, un backend de CMS headless auto-hébergé peut fonctionner longtemps, il n’y a pas d’enfermement propriétaire. Mais vous devez quand même vous conformer à l’utilisation du système de CMS headless de quelqu’un pour stocker et récupérer les données.
Tandis que le Markdown, d’autre part, fonctionne essentiellement dans tous les CMS non headless. Simplement, vous devrez peut-être stocker des milliers de fichiers markdown sur votre site, voire plus, ce qui ne semble pas être une solution à long terme.
Conclusion
Donc, je m’en fiche maintenant.
Utilisez simplement ce que vous aimez, et attendez que le blog atteigne des dizaines de milliers d’articles. D’ici là, je devrais gagner un peu d’argent pour embaucher un développeur afin de faire la migration vers un nouveau CMS sophistiqué à ce moment-là. Je n’ai pas vraiment envie de me stresser avec ça.