←back to Blog

Comprendre le fonctionnement des thèmes/templates WordPress

Edit: Je viens juste de voir que Fran6 avait pondu un article du même style… je sors…

 

Lorsqu’on travaille la première fois avec WordPress, le nombre de fichiers présents dans le thème par défaut, 18 pour être précis, peut paraître déroutant. Pourtant, la logique derrière est très simple et surtout très souple à l’usage…

Pour bien comprendre, rien ne vaut un petit schéma :)

Template Hierarchy

(source: https://codex.wordpress.org/Template_Hierarchy)

 Comme on peut le voir sur ce schéma, WordPress dispose de 8 vues différentes :

  • Page d’accueil
  • Article unique (avec les commentaires en général)
  • Page statique
  • Catégorie
  • Auteur
  • Vues relatives aux dates (années, mois, jours)
  • Recherche
  • Erreur 404

Cas général

Selon l’adresse entrée par le visiteur, WordPress va sélectionner la vue correspondante. Si le fichier de la vue en question existe, WordPress lance le template, sinon il appelle le template par défaut, index.php

Voila le cas le plus simple… Cependant, WordPress est plus puissant et permet d’aller un peu plus loin dans la logique pour certaines vues. Les vues en question sont les pages statiques, les catégories et dans une moindre mesure les vues auteurs et relatives aux dates.

Cas spécifique 1 : Les pages statiques de WP

WordPress permet grâce aux pages statiques, d’afficher un contenu (contact, CV, présentation) hors de la chronologie du blog. Il est également possible de créer des templates spécifiques pour ces pages.

Pour cela, vous pouvez vous inspirer du tutoriel de fran6, mais revenons à nos moutons…

Dans le cas où votre page possède un template personnalisé, WordPress tentera de le lancer, sinon il chargera le fichier page.php. Enfin si ce dernier n’existe pas, il charger le fichier index.php (le cas général)

Soit : votretemplateperso.php –> page.php –> index.php

Cas spécifique 2 : Les catégories de WP

Ce deuxième cas est un peu moins souple que les templates des pages. En effet cette fois-ci, le nom de vos template sera obligatoirement formaté en « category-X.php », X étant l’ID de la catégorie. La logique est la même que pour les pages.

Soit: category-X.php –> category.php –> archive.php –> index.php

Cas spécifique 3 : Le fichier archive.php

Ce fichier est commun aux vues relatives aux articles du blog, c’est-à-dire catégorie, auteur et vues relatives aux dates.

Il s’intercale juste avant le fichier index.php

Soit: category-X.php –> category.php –> archive.php –> index.php

ou: author.php –> archive.php –> index.php

ou encore: date.php –> archive.php –> index.php

Conclusion

Tout ce que je viens d’expliquer ici textuellement est affiché sur le schéma ci-dessus… Un peu de logique de programmation vous permettra en un clin d’oeil de comprendre la logique de WP ;)

Vous trouverez d’autres ressources sur la page Template Hierarchy du codex WordPress.org

4 réponses à “Comprendre le fonctionnement des thèmes/templates WordPress”

  1. Avatar de artxtra
    artxtra

    Je voyais bien le truc dans l'absolu, mais là j'avoue que le schéma aide foutrement bien. Merci.

  2. Avatar de phc
    phc

    Peut-on supprimer le lien d’une catégorie pour le cas où on souhaiterait qu’elle s’affiche tout de même dans le menu mais que l’on ne puisse cliquer dessus car il n’y a pas encore d’articles pour le moment dans cette catégorie en question ?
    merci