Pourquoi nous utilisons Wagtail : le CMS Django qui sépare les casquettes
En mars 2024, lors du Meetup Python de Lyon en mixité choisie, j'ai donné une présentation d'introduction à Wagtail, dont le titre était :
"Si tu n'es pas designer, tu ne changes pas la couleur."
Cela illustre un des aspects de Wagtail qui nous plaît particulièrement à Hashbang : la séparation des casquettes.
Qu'est-ce que Wagtail ?
Wagtail est un CMS, Content Management System, Système de gestion de contenu, autrement dit un outil de création de site internet ne nécessitant pas de coder.
Cela fait maintenant plusieurs années que Hashbang utilise et personnalise Wagtail pour ses client·e·s. Wagtail est open-source et basé sur Django, notre framework web de prédilection.
Wagtail fournit deux interfaces :
- le site web final, dont le design est intégré par nos soins après discussions avec notre client·e et maquettage
- un espace d'administration prêt à l'usage qui permet à nos client·e·s d'être autonome dans la mise à jour de leur contenu
Le Zen de Wagtail
On trouve dans les deux premiers principes du Zen de Wagtail :
- "Wagtail is not an instant website in a box." : Wagtail ne fournit pas instantanément un site internet tout prêt. C'est un outil qui demande du développement pour être mis en place. Cela peut sembler peu pratique au premier abord, mais c'est ce qui nous permet d'intégrer et de personnaliser Wagtail de pleins de manières différentes, en s'adaptant au besoin de chaque client·e.
- "Always wear the right hat." : Toujours avoir la bonne casquette. Wagtail sépare les rôles intervenants dans la création et maintenance d'un site : le design, le développement, l'administration et l'édition de contenu. Le rôle qui publie un nouvel article sur le blog n'est pas le rôle qui met à jour la police et la couleur des titres selon la nouvelle charte graphique. Le rôle qui ajoute des droits de publication à un nouveau contributeur au site n'est pas le rôle qui développe un nouveau template de page.
Un grand pouvoir implique une grande responsabilité
Il arrive souvent de donner plus de pouvoir que nécessaire à l'éditeur·ice de contenu et l'administrateur·ice du site. Il n'est pas rare qu'il s'agisse d'ailleurs de la même personne, qui est également la plupart du temps le ou la client·e.
Il y a ici un juste milieu à trouver : laisser un peu de choix, mais pas trop.
Exemple : Lorsque, en tant que développeuse, je paramètre des blocs dans Wagtail, je ne permets pas aux éditeur·ices de contenu de choisir n'importe quelle couleur de texte. S'il y a une volonté du client de pouvoir personnaliser, je propose plutôt d'avoir deux options de design, préalablement discutées ensemble, parmi lesquelles choisir.
- Cela laisse de la liberté à l'éditeur·ice de contenu / client·e
- Cela évite les accidents de design (manque de cohérence, souci de lisibilité et d'accessibilité...)
Chacun son rôle
Lors de la réalisation des maquettes d'un site internet, le·a designeur·se prend en compte beaucoup de paramètres qui ne sont pas forcément visibles de manière évidente dans le résultat final.
Le rôle de l'éditeur·ice de contenu est de mettre à jour le contenu du site, et bien le contenu, pas de refaire le design à chaque publication. C'est là la philosophie de Wagtail, à laquelle Hashbang adhère : chacun son rôle.
Pour aller plus loin
Nous nous sommes ici concentrés sur un seul aspect de Wagtail, qui présente de nombreux autres avantages : sécurité, scalabilité, multilingue...
- Si vous êtes développeur·euse, je vous envoie sur le tutoriel de Wagtail pour tester son installation
- Si vous êtes éditeur·ice de contenu et/ou à la recherche d'un CMS pour votre site internet, je vous envoie vers le guide utilisateur de Wagtail pour avoir un tour d'horizon de son interface d'administration
Des exemples de clients pour qui nous avons réalisé un site avec Wagtail : Solidaires, La Guilde de l'Innovation, Cap Habitat Coopératif.
Hashbang est disponible pour tous vos projets de création de site, avec ou sans Wagtail, n'hésitez pas à nous contacter !