Un établissement public régional m’a confié la refonte de son site en éditeur de site, avec une particularité rare : chaque direction métier (urbanisme, culture, transports, action sociale) gérait son propre type de contenu personnalisé, avec des besoins d’affichage suffisamment différents pour justifier des gabarits dédiés. Le projet a fini par compter cent trois templates distincts dans l’éditeur, un volume qui aurait rendu la liste native totalement illisible sans une organisation pensée dès le départ.
Voici comment ce projet a été structuré pour rester compréhensible malgré son échelle, en s’appuyant sur une convention de nommage stricte plutôt que sur un outil externe de gestion.
Le problème de la liste native au-delà de trente entrées
L’écran Apparence > Éditeur > Modèles affiche l’ensemble des templates sous forme de liste simple, triée alphabétiquement par titre, sans possibilité native de regroupement par dossier ou par catégorie visuelle. Passé une trentaine d’entrées, cette liste devient difficile à parcourir pour une équipe qui ne connaît pas déjà l’organisation du projet par cœur.
La convention de nommage retenue

La solution retenue a consisté à préfixer systématiquement le titre de chaque template par le nom de sa direction métier, suivi du type de gabarit, ce qui rend la liste triable alphabétiquement de façon cohérente sans configuration supplémentaire : Urbanisme — Archive projets, Urbanisme — Fiche projet, Culture — Archive événements, et ainsi de suite pour les huit directions concernées.
add_filter( 'default_template_types', function( $types ) {
return $types;
} );
// Le titre affiché dans l'éditeur reste géré directement
// dans le champ title.txt ou l'en-tête du fichier de template :
// Title: Urbanisme — Fiche projet
Côté fichiers, dans le dossier templates du thème, le nommage physique suit une logique parallèle mais adaptée aux contraintes de la hiérarchie WordPress, avec un préfixe de type de contenu obligatoire suivi d’un suffixe de direction pour les cas où plusieurs CPT partagent une structure proche :
templates/
├── single-projet-urbanisme.html
├── archive-projet-urbanisme.html
├── single-evenement-culture.html
├── archive-evenement-culture.html
├── single-ligne-transport.html
├── archive-ligne-transport.html
└── single-dispositif-social.html
Documenter la correspondance dans un fichier de référence
Au-delà du nommage, un fichier MAP-TEMPLATES.md versionné avec le thème recense chaque template, sa direction métier, son CPT associé et sa dernière date de modification significative. Ce fichier, consulté en début de chaque intervention sur le projet, a évité de nombreuses confusions entre développeurs qui se relayaient sur ce chantier de longue durée.
| Direction métier | Nombre de templates | CPT associé |
|---|---|---|
| Urbanisme | 18 | projet_urbanisme |
| Culture | 22 | evenement_culturel |
| Transports | 14 | ligne_transport |
| Action sociale | 19 | dispositif_social |
| Communs (page, 404, recherche…) | 30 | — |
Un CPT ne devient une direction distincte qu’au-delà d’un seuil
Une règle de gouvernance a été fixée en début de projet avec le client : une direction métier ne justifie un type de contenu et des templates dédiés qu’à partir d’un volume de contenu prévisible dépassant une cinquantaine d’entrées à terme, sous peine de multiplier les gabarits pour des besoins qui auraient pu être couverts par un CPT générique avec un simple champ de catégorisation.
Ce qu’on ferait différemment aujourd’hui
Avec le recul, un sous-dossier virtuel simulé par un préfixe reste une solution honorable mais manuelle, sensible aux erreurs de frappe lors de la création d’un nouveau template par une équipe pressée. Un contrôle automatisé, vérifiant en continu que chaque nouveau template créé respecte bien la convention de préfixe attendue, aurait renforcé la fiabilité du système sur la durée du projet.
- Un préfixe de direction métier cohérent pour trier alphabétiquement la liste native des templates.
- Un fichier de référence versionné documentant la correspondance entre templates et CPT.
- Un seuil de volume clair avant de justifier la création d’un CPT et de ses templates dédiés.
Passé une trentaine de gabarits, l’organisation ne peut plus reposer sur la mémoire individuelle d’un développeur : elle doit être documentée et nommée de façon suffisamment rigoureuse pour qu’un nouvel arrivant s’y retrouve seul.
Ce qu’il faut retenir
Un site à cent templates reste parfaitement gérable en éditeur de site natif, à condition d’accepter qu’aucun outil natif ne viendra organiser cette liste à la place de l’équipe projet. Une convention de nommage stricte, documentée et appliquée sans exception, fait toute la différence entre un projet maîtrisé et un chaos de gabarits impossibles à distinguer les uns des autres.