Il existe de nombreuses façons de modifier l’apparence d’une page spécifique sur votre site WordPress. Vous pouvez modifier le contenu dans l’éditeur de contenu WordPress. Vous pouvez modifier les règles CSS qui affectent le site. Ou créez un nouveau fichier dans la hiérarchie des modèles de votre thème WordPress pour correspondre à la page spécifique. Ou vous pouvez utiliser un modèle de page de thème conçu spécifiquement pour cette page. Le dernier est ce dont nous parlons ici. Dans ce tutoriel, nous expliquerons à la fois comment créer un modèle de page personnalisé WordPress et pourquoi vous voudrez peut-être le faire. Nous allons commencer par le pourquoi.
Quand vous dites « Modèle de Page personnalisée de Thème WordPress », que voulez-vous dire?
Il y a un énorme problème de terminologie avec ce sujet. Comme je l’ai fait allusion ci-dessus, il y a beaucoup de choses avec la vague notion de « page » et de « modèle » dans le monde WordPress qui ne sont pas ce dont nous parlons ici. La première chose que je * ne * veux dire en disant « modèle de page personnalisée WordPress » est « un thème WordPress. »(Beaucoup de gens nouveaux sur WordPress disent « modèles » quand ils signifient « un thème WordPress. »)
Alors qu’est-ce que je veux dire par « modèle de page personnalisé »? Je veux dire ce qui est montré à droite. Par exemple, vous modifiez le type de contenu de page dans WordPress (bien que, comme nous le verrons plus loin, il puisse désormais inclure d’autres types de contenu WordPress). Et lors de la modification de votre page, vous remarquez la boîte « Attributs de page », Et à l’intérieur de celle-ci, vous pouvez (selon que votre thème a déjà ces modèles) voir ce menu déroulant « Modèle ». Cette case de sélection est illustrée à droite (elle se trouve également sur le côté droit de votre écran « édition de page »). Si vous voyez cette liste déroulante, c’est parce que votre thème fournit certains de ces « modèles de page personnalisés. »Ce sont en fait des fichiers dans le dossier de votre thème actuellement actif (ou son parent), et ont une seule caractéristique distinctive que nous aborderons plus tard. Mais cette liste déroulante sélectionnable de modèles de page nommés est ce dont nous parlons ici aujourd’hui.
Comment Cela S’Intègre-T-Il Dans la Hiérarchie Des Modèles ?
J’ai déjà écrit, et je le ferai probablement à nouveau, sur la façon dont le modèle — il y a encore ce mot — hiérarchie est vraiment le concept clé que vous devez comprendre pour créer ou modifier un thème WordPress. (Voici notre introduction rapide.) Presque tout le reste est un détail que vous pouvez résoudre une fois que vous avez compris la dynamique de base de la hiérarchie des modèles. Cependant, la chose spécifique que nous entendons aujourd’hui se situe en dehors de la hiérarchie des modèles. Ce « modèle sélectionné » remplace essentiellement l’ensemble du processus de sélection de la hiérarchie des modèles.
Si un modèle de page personnalisé a été sélectionné dans la liste déroulante que nous avons montrée ci-dessus, ce fichier « modèle » sera utilisé. Arrêt complet, sans exception.
Pour réaffirmer que, si un modèle de page personnalisé est sélectionné, ce fichier « modèle » sera utilisé. Arrêt complet, sans exception. Sinon, la hiérarchie des modèles WordPress recherchera une manière quelque peu différente que quelqu’un aurait pu essayer de styliser une page spécifique — avec un fichier page-123.php
ou page-custom-template-utilizer.php
. (La différence entre le modèle personnalisé et celui avec cette structure page-$id
ou page-$slug
n’est vraiment que dans l’interaction et l’interface.) Si aucun de ceux-ci n’est trouvé, WordPress retombera à page.php
, s’il existe, et sinon nous nous retrouverions à la solution de repli ultime, index.php
.
Si vous vous demandez pourquoi vous utiliseriez cette méthode par opposition à la méthode numérique ou slug — dans les deux cas, vous créez un fichier personnalisé dans votre thème, après tout — la raison en est que l’utilisation de modèles personnalisés vous donne plus de flexibilité et d’indépendance entre votre thème et la base de données et le contenu de votre site. Pour cette raison, je le recommanderais dans à peu près toutes les situations où vous ne savez pas avec quoi aller. Avec la structure page-*.php
numérique ou basée sur des limaces, vous êtes obligé de faire connaître à votre thème la manière spécifique dont se trouvent actuellement les données de votre base de données WordPress. (Donc, si vous réutilisez le thème sur un autre site WordPress, par exemple, ce fichier est inutile.)
Comment créer un Modèle de Page Personnalisé WordPress?
OK, nous savons donc que les modèles de page personnalisés remplaceront la hiérarchie des modèles WordPress. Et que nous les utiliserons sur les pages réelles de notre site WordPress en les sélectionnant dans un menu déroulant « Modèle » dans la barre de droite du contenu pertinent. Il est donc temps de passer au processus de création d’un modèle de page personnalisé WordPress.
Ce que vous allez faire, c’est ajouter à votre thème (et ce devrait vraiment être un thème enfant, sauf s’il y a une contrainte très forte qui rend cela impossible pour vous) un fichier avec un nom comme my-template.php
ou really-cool-awesome.php
. Cela n’a pas vraiment d’importance, tant que vous n’utilisez pas réellement un nom qui fait partie de la hiérarchie des modèles, vous êtes en or. (Ce qui signifie: n’utilisez pas un nom comme page-whatever.php
. Comme nous l’avons évoqué ci-dessus, la hiérarchie des modèles de WordPress pense qu’elle possède un fichier nommé avec ce modèle.)
Une fois que vous avez le fichier (cool-page-template.php
, de ce que vous préférez), vous devriez le démarrer comme ceci:
<?php/*Template Name: Name To Appear In The Dropdown*/?>This is my custom template.
Et vous avez fini. Comme vous pouvez probablement le deviner, le nom qui apparaîtra dans la liste déroulante « Modèle » est ce que j’ai habilement appelé « Nom À apparaître Dans la liste Déroulante. »Tout comme le fichier style.css
de votre thème, ou le fichier principal d’un plugin, WordPress utilise les informations contenues dans ce commentaire de code pour lui fournir un contexte pour fonctionner.
Alors le contenu de nos pages sera, dans ce cas, le texte HTML très basique « Ceci est mon modèle personnalisé ». Comme vous pouvez le deviner, voici où vous êtes beaucoup plus susceptible de mettre le contenu HTML que vous souhaitez afficher sur la page. Donc, vos balises <h1>
, <p>
et peut-être (si vous avez envie 🤪) un peu de PHP pour faire un comportement personnalisé que vous voulez montrer.
Pourquoi Votre Modèle de Page Personnalisée WordPress n’apparaît pas
J’ai (plus d’une fois) eu l’expérience que mon nouveau modèle de page WordPress n’apparaît pas. De loin la cause la plus fréquente est que j’ai tapé (ou mal intégré) à quoi devrait ressembler le commentaire d’en-tête de fichier. Il doit être étiqueté avec le titre exact. Donc Template Name: Narrow Page
est parfait, mais WordPress ne localisera jamais quelque chose qui a à la place un en-tête de Template: Custom
.
Il y a quelques autres choses à vérifier. D’autres raisons pour lesquelles vous pourriez constater que votre modèle de page personnalisé n’apparaît pas:
- Vous placez le fichier au mauvais endroit (il doit être dans votre thème en cours d’exécution ou son parent)
- Vous avez donné à votre modèle un fichier qui commence par
page-
. En raison d’une fonctionnalité des thèmes WordPress, les modèles de page personnalisés commençant parpage-
sont plutôt traités comme une page de la hiérarchie des modèles. - Votre thème manque l’un de ses deux fichiers require et ne fonctionne donc pas. (Les thèmes WordPress *doivent* avoir un fichier
index.php
et unstyle.css
.) - Il y avait un problème avec cela à l’époque de WordPress 4.9 (il y a quelques années maintenant)
Modèles de page pour les types de publication personnalisés WordPress non « Page »
Pour une grande partie de l’histoire de WordPress, ces « modèles de page personnalisés » ne concernaient que le type de contenu « Page ». (WordPress n’a que deux types de contenu, « Posts » et « Pages » par défaut.) Mais dans WordPress 4.7, la fonctionnalité a été ajoutée pour que vous puissiez utiliser ces modèles de page avec de nouveaux types de contenu (souvent appelés « types de publication personnalisés »).
Pour ce faire, vous ajoutez une autre ligne à votre en-tête de fichier « . » Donc ça ressemblerait un peu à ça:
<?php/*Template Name: Narrower TemplateTemplate Post Type: post, page, event*/// Page HTML and PHP goes here...
Comme vous pouvez probablement le deviner, ce nouvel en-tête Template Post Type:
préface le nom « au niveau du code » pour les types de publication (personnalisés). Vous remarquerez que dans l’exemple ci-dessus, nous listons le type de contenu page
avec lequel WordPress est livré, ainsi que celui post
. De plus, nous prenons en charge un troisième « type de publication personnalisé » appelé event
.
Une Excellente Raison D’Utiliser Des Modèles De Page Personnalisés
Maintenant, si vous l’avez déjà fait, vous remarquerez que la page ci-dessus n’aura pas de style et ressemblera très très peu au reste de votre site WordPress (sauf si vous avez le thème le plus simple imaginable). En effet, notre fichier contient une chose simple et manque de fonctionnalités très courantes dans toutes les autres pages thématiques. Il n’a pas d’appels get_header()
, get_footer()
ou La boucle, que tous vos autres fichiers de thème font probablement.
Parfois, vous voulez une page qui ne ressemble pas beaucoup au reste de votre site, mais qui fait toujours partie de votre expérience de gestion WordPress. Ces modèles personnalisés sont parfaits pour cela.
Mais cela illustre également l’une des grandes puissances des modèles personnalisés comme ceux-ci: parfois, vous voulez une page qui ne ressemble pas beaucoup au reste de votre site, mais qui fait toujours partie de votre expérience de gestion WordPress. Ces modèles personnalisés sont parfaits pour cela. Bien que vous les voyiez également utilisés pour les pages d’archives ou (moins souvent) les pages de contact, cette capacité est souvent négligée.
Et Enfin, Quelques Conseils Pratiques Sur les Modèles de page
Lorsque vous cherchez à créer une page qui ressemble à vos autres pages (mais un peu différente), je commencerais en fait par copier un fichier existant de votre thème, probablement page.php
. C’est tout simplement parce que la plupart d’entre nous trouvent plus facile de changer quelque chose que de construire à partir de zéro. L’exemple de code donne à votre modèle de page ce sens de « page blanche vierge », où vous cherchez probablement à ajouter ou à supprimer des détails spécifiques de votre modèle page.php
existant. La suppression de la barre latérale ou du pied de page, par exemple, sont des raisons très courantes pour lesquelles les gens créent un « modèle de page personnalisé » dans WordPress.
Comme nous l’avons couvert, si vous dupliquez le fichier page.php
de votre thème pour commencer à créer votre modèle de page personnalisé, vous devrez vous assurer d’ajouter l' »en-tête de modèle de page personnalisée » que nous avons ci-dessus. Encore une fois, ce sont les pages « magiques » qui font fonctionner ces modèles. Maintenant, allez faire des pages géniales!
Crédit image: Infrogrammation