Maybaygiare.org

Blog Network

Visualisez la Hiérarchie des modèles WordPress

La hiérarchie des modèles WordPress est l’une des choses les plus influentes dans la vie des développeurs de thèmes. Les utilisateurs peuvent avoir besoin de le comprendre, les plugins peuvent avoir besoin d’interagir avec, mais en général, c’est le thème qui concerne la hiérarchie des modèles.

C’est parce que c’est la hiérarchie des modèles WordPress qui détermine lequel des fichiers d’un thème est utilisé à un moment donné. Autrement dit: la hiérarchie des modèles est le fondement sur lequel les thématiciens WordPress font leur art.

Le but de cet article est d’élucider davantage cette idée. Nous définirons ce que fait la hiérarchie des modèles, pourquoi vous devez le savoir pour être un modificateur efficace des sites WordPress, et nous parlerons de la façon de l’utiliser et (très brièvement) de son fonctionnement.

Quelle est la hiérarchie des modèles ?

En son cœur, la hiérarchie des modèles est la structure de choix utilisée par WordPress pour déterminer quel fichier du thème sera utilisé pour générer le HTML final complet pour une page donnée de votre site Web WordPress.

WordPress doit avoir un moyen de savoir comment interagir avec le thème. Il serait possible que quelqu’un écrive différents types de logiques PHP complexes pour son thème qui expliqueraient à WordPress comment interagir avec lui. Il pourrait peut-être s’agir d’une classe PHP correspondant à une interface définie par WordPress (au sens de la programmation orientée objet) à laquelle chaque thème devrait répondre.

Mais c’est compliqué — à lire, et encore moins à faire. Et c’est précisément le point de la hiérarchie des modèles: pour que WordPress puisse utiliser avec succès différents thèmes mais aussi faciliter la création et la modification de thèmes, une solution plus simple était nécessaire. Et c’est ce qu’est la hiérarchie des modèles.

En son cœur, la hiérarchie des modèles est la structure de choix utilisée par WordPress pour déterminer quel fichier du thème sera utilisé pour générer le code HTML final complet pour une page donnée de votre site Web WordPress.

La plupart des fichiers d’un thème WordPress sont en fait membres de la hiérarchie des modèles, et WordPress choisira de faire appel à l’un d’entre eux en fonction du type d’informations qu’il essaie d’afficher.

Marcher dans la hiérarchie des modèles

Si WordPress doit afficher les publications (ou tout type de contenu) d’un auteur (utilisateur) spécifique sur un site WordPress, il a quelques besoins. Principalement:

  • Il doit faciliter la personnalisation d’une page par quelqu’un qui crée ou modifie un thème
  • Il doit s’assurer que si aucune personnalisation n’était nécessaire, il aura quelque chose à utiliser

Pour ce faire, la hiérarchie des modèles essaiera différents fichiers dans le thème actuellement actif. S’ils existent, il les utilisera. S’ils ne le font pas, ça va continuer.

Donc, en cherchant à trouver le modèle à utiliser pour présenter tous les messages pour un auteur donné, faisons en sorte que le nom d’utilisateur des auteurs « david” qui a un id numérique de 3. (Sûrement une coïncidence. ;p) WordPress a besoin de savoir quel fichier de votre thème actuel utiliser. Voici donc à quoi il ressemble dans vos fichiers de thème:

  1. Le fichier author-david.php existe-t-il? Non…
  2. Le fichier author-3.php existe-t-il ? Non…
  3. Le fichier author.php existe-t-il ? Non…
  4. Le fichier archive.php existe-t-il ? Non…
  5. Le fichier index.php existe-t-il ? Oui !

Vous remarquerez qu’il y a cinq « non” avant que WordPress obtienne un oui. Chacun d’eux, et la question suivante sont la hiérarchie des modèles. Dès que WordPress obtient un « oui” sur l’une de ces questions, le rôle de la hiérarchie des modèles est terminé. Mais c’est vraiment important.

Le fichier trouvé est responsable du code HTML de toute la page. Littéralement, tout ce que WordPress fait ou affiche sur une page de votre site provient d’un seul fichier de hiérarchie de modèles dans votre thème. (Comme vous le savez probablement déjà, cela ne signifie pas que tout ce que fait WordPress est coincé dans ce fichier, mais la façon dont ces autres éléments sont extraits est en dehors du champ d’application de cet article.)

Ce sont donc ces questions (WordPress a décidé laquelle rechercher en fonction de l’URL que la personne visite) qui composent la hiérarchie des modèles. Et juste pour que vous sachiez, si vous n’avez pas de index.php, vous n’avez pas de thème WordPress. C’est le dernier arrêt pour chaque partie de la hiérarchie des modèles.

Le repli ultime: Quoi et pourquoi

Comme je viens de le dire, sans un index.php, vous n’avez pas de thème WordPress. Mais, si vous en avez un, vous n’avez vraiment besoin d’aucun autre fichier que vous pourriez utiliser dans la hiérarchie des modèles. C’est l’autre chose à réaliser.

WordPress a besoin, comme nous l’avons dit plus haut, d’une certaine certitude qu’il pourra toujours créer une page pour l’utilisateur final. Un thème doit fournir cela. C’est donc à cela que sert la hiérarchie des modèles. Mais le besoin d’un repli final est absolu, et c’est pourquoi WordPress ne vous permet pas d’activer un thème qui n’a pas de fichier index.php.

Pourquoi la hiérarchie des modèles WordPress Existe

La hiérarchie des modèles existe pour faciliter la personnalisation de l’apparence d’un site WordPress par les concepteurs et les développeurs de thèmes. Il est très courant pour un client de rendre les pages « archive de balises” de son blog différentes de la page de publication unique. La hiérarchie des modèles de WordPress prend donc en charge ce besoin.

Comme nous l’avons mentionné ci-dessus, il existe des alternatives à la hiérarchie des modèles que l’on peut imaginer. Mais peu d’entre eux sont bons. Et c’est fondamentalement la raison pour laquelle la hiérarchie des modèles existe.

Une discussion rapide des thèmes enfants

Comme vous le savez peut-être, WordPress a ces choses appelées thèmes enfants. Et vraiment, les thèmes enfants WordPress sont plus de la moitié des raisons d’aimer la hiérarchie des modèles. Les thèmes enfants permettent aux concepteurs et aux développeurs de faire de petits ajustements à des pages spécifiques d’un site sans avoir à créer un thème entier pour eux-mêmes.

La conception complète des thèmes enfants est un sujet de discussion bien au-delà de cet article. Pour en savoir plus sur les thèmes enfants, vous serez bien servi par ces deux articles sur WPShout, ou celui-ci sur le WordPress.org site.

La principale chose à savoir sur les thèmes enfants est que la hiérarchie des modèles WordPress les connaît et fonctionne avec eux. Donc, ce que j’ai expliqué plus tôt sur la recherche de fichiers ci-dessus pour un modèle d’auteur est en fait un peu différent si un thème enfant est utilisé. Si c’est le cas, ça ressemblera à:

  1. Le fichier author-david.php existe-t-il dans le thème enfant? Non…
  2. Le fichier author-david.php existe-t-il dans le thème parent? Non…
  3. Le fichier author-3.php existe-t-il dans le thème enfant? Non…
  4. Le fichier author-3.php existe-t-il dans le thème parent? Non…
  5. Le fichier author.php existe-t-il dans le thème enfant? OUI !

Vous remarquerez que ce sont plus d’étapes pour aller aussi loin dans la hiérarchie des modèles. Vous remarquerez également que le thème enfant est toujours coché en premier. C’est une chose très importante à propos de la hiérarchie des modèles et des thèmes enfants — leurs fichiers battent toujours ceux d’un parent, en ce qui concerne la hiérarchie des modèles.

Pourquoi Vous devez comprendre la hiérarchie des modèles WordPress

Thématiser sans avoir une bonne compréhension de la hiérarchie des modèles est presque impossible. Vous pouvez peut-être le faire, mais cela ressemblera à une magie déroutante et mystifiante.

Cela aidera également, si vous essayez de le faire, à connaître certains plugins qui rendent la hiérarchie des modèles un peu plus claire: Quel Modèle et Afficher le Modèle actuel. Ces deux font la même chose (ce qui est utile si vous connaissez également la hiérarchie des modèles): ils vous indiquent quel fichier de hiérarchie de modèles est utilisé pour construire une page donnée. Ils vous en disent tous les deux un peu plus que cela, mais c’est leur utilisation principale (du moins pour moi).

Pourquoi vous devez connaître la hiérarchie des modèles et comprendre sa structure – même avec quel modèle de votre ceinture d’outils – vous l’utiliserez pour « remplacer.”Pour le thème enfant, un « remplacement » est aussi simple que de créer un fichier portant le même nom dans votre thème enfant et de l’appeler bon. Mais lorsque vous essayez d’être plus précis que cela, vous devrez vous référer à un diagramme de hiérarchie de modèles. C’est là que je cherche toujours wphierarchy.com . WordPress.org a un diagramme, tout comme une recherche d’images Google. Mais rien n’est plus rapide pour accéder à partir d’un état inactif que ce site.

Comment travailler avec la hiérarchie des modèles de WordPress

Si vous avez lu linéairement, je pense que vous avez déjà une assez bonne réponse à cette question. Mais c’est Internet et je sais que les gens écument. Vous travaillez avec la hiérarchie des modèles en créant un thème. Qu’il s’agisse d’un thème autonome ou d’un « enfant” qui s’appuie sur un « parent”, les fichiers d’un thème sont fondamentalement la façon dont vous modifiez la façon dont vous travaillez avec la hiérarchie des modèles.

Fondamentalement, vous créez le fichier qui correspond à l’endroit où, dans la hiérarchie des modèles, vous essayez de modifier l’apparence de la page. Donc, si vous essayez de rendre le code HTML d’une seule page différent, vous pourrez spécifier un modèle de page ou créer un fichier dans votre thème avec l’ID de cette publication.

Aucun de ceux-ci n’est parfait. Mais c’est fondamentalement comme ça que ça marche.

Comment fonctionne la Hiérarchie des modèles Dans le Code WordPress

« Comment fonctionne la hiérarchie des modèles WordPress? »est vraiment une question académique à laquelle presque aucun développeur WordPress n’a jamais besoin de réponse. Mais, un jour, je me suis retrouvé à me demander avec désinvolture, et j’ai donc cherché. Et cet article est sorti:

Spelunking dans la hiérarchie des modèles

La réponse courte, pour ceux qui sont intéressés à lire ceci mais pas assez intéressés pour cliquer, est un tas de ifs et elseifs dans le code PHP. Pas beaucoup plus. Ce n’est pas le code le plus élégant qui sous-tend cette facette puissante et importante de WordPress, mais il fonctionne bien et permet tous les thèmes que vous avez jamais connus et aimés dans WordPress. Plutôt cool!

Pour en savoir plus sur la hiérarchie des modèles

Si vous êtes nouveau sur certains des concepts de cet article, ou si vous avez simplement besoin d’un rappel, veuillez consulter ces autres articles que nous avons. Tout d’abord, deux pour les débutants:

Comment créer un thème enfant WordPress

Cours: Développement de thèmes WordPress (Concepts de base)

Ensuite, pour ceux qui cherchent à approfondir et à réfléchir davantage à la hiérarchie des modèles, à son fonctionnement et à la manière dont vous devez l’utiliser:

Thèmes Enfants, la Hiérarchie des Modèles et Un Petit Hack

Piratage de la Hiérarchie des modèles WordPress

Maintenant Vous connaissez la Hiérarchie des Modèles WordPress!

J’espère qu’avec cela à votre actif, vous avez une assez bonne idée de la hiérarchie des modèles WordPress: c’est la façon dont WordPress interagit avec un thème pour déterminer comment créer le code HTML qu’il montrera aux visiteurs de votre site. Et j’espère que vous comprendrez aussi pourquoi WordPress a une hiérarchie de modèles (pour faire fonctionner les thèmes avec elle) et pourquoi vous l’utiliserez (pour personnaliser plus facilement les pages de votre site, via votre thème). Et j’espère que vous savez aussi comment interagir avec elle: en ajoutant ou en supprimant les fichiers avec lesquels elle interagit. Avec ça, bon piratage!

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.