Qu’est ce qu’un template dans un thème WordPress ?

16 janvier 2019

Quentin

Avec WordPress, vous pouvez créer votre propre thème. Un thème est composé de fichiers appelés « template ». Les templates sont des fichiers qui permettent de mettre en forme votre contenu grâce aux langages HTML et PHP.

Cet article à pour but de vous expliquer ce qu’est un template dans WordPress et comment ces fichiers fonctionnent. Prêt ? C’est parti.

Comment un template WordPress s’affiche ?

Tout d’abord, laissez-moi vous expliquer succinctement comment fonctionne WordPress.

  1. L’utilisateur charge une page sur votre site WordPress
  2. WordPress détermine de quel type de page il s’agit (page, post, catégorie, page d’accueil etc.)
  3. En fonction du type de page, WordPress charge la page avec le template adéquat

Il existe donc plusieurs fichiers de template pour distinguer l’affichage du contenu en fonction du type de page. Par exemple, on peut vouloir afficher une page différemment d’une page catégorie.

Ce que vous devez également savoir, c’est que WordPress charge les templates dans un certain ordre. Voici un schéma pour s’y retrouver :

La hiérarchie des templates WordPress

Ce schéma se lit de gauche à droite.

Prenons un exemple. Si l’utilisateur de notre site charge une page contenant tous les articles de l’auteur « Quentin », voici comment WordPress interprète les choses :

  1. WordPress détecte que le type de page est une « Archive page » (un ensemble de posts)
  2. WordPress cherche ensuite de quel type d’archive il s’agit. Ici, ce serait une « Author archive » puis il tente de charger le bon fichier de template.
  3. Si un template author-quentin.php existe, alors WordPress charge ce template et s’arrête là, sinon …
  4. WordPress continue et regarde si un template author-1.php existe (où le « 1 » représenterait l’id de l’auteur). Si oui, WordPress le charge sinon …
  5. WordPress regarde si le template author.php existe. Si c’est le cas, le template est chargé, sinon …
  6. WordPress regarde si le template archive.php existe. Si c’est le cas, le template est chargé, sinon …
  7. Si la page en cours est une page issue d’une pagination et que ce n’est pas la première (par exemple, cela pourrait être la 2ème page d’une catégorie), alors, le template paged.php est chargé s’il existe. Sinon …
  8. WordPress charge le template index.php

Si vous regardez bien ce schéma, vous pouvez voir qu’en théorie, seul le fichier index.php est nécessaire. C’est ce que j’explique dans le tuto « Comment créer un thème facilement ?« . Dans ce cas là, vous pouvez utiliser les « conditions WordPress » pour distinguer l’affichage du contenu en fonction du type de page. Mais cela fera l’objet d’un prochain article 😉 !

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *