Maison Utile Créez un modèle de page WordPress distinct. Comment ajouter vos modèles de page à WordPress

Créez un modèle de page WordPress distinct. Comment ajouter vos modèles de page à WordPress

Une tâche similaire peut survenir lorsque vous devez disposer de différents modèles de pages en termes de conception au sein d'un même site. La situation la plus simple qui me vient à l’esprit : masquer les publicités/bannières dans les articles en vedette ; ou tout à coup, vous souhaitez supprimer des listes de notes similaires ou, par exemple, certains éléments de certaines publications. Aujourd'hui, je vais vous apprendre comment faire cela.

À ce problème Ce n’est pas la première fois que je reviens, je voulais rassembler toutes les nuances et connaissances en un seul endroit. Heureusement, méthodes modernes Par rapport aux modifications précédentes, elles sont aussi simples que possible. Vous n'avez même pas besoin d'installer des modules supplémentaires comme avant. Les développeurs WordPress simplifient et améliorent vraiment le système.

Alors aujourd'hui, regardons :

Différents modèles de pages/articles dans WordPress

En théorie, il suffit dans ce cas de placer du code tout en haut du fichier correspondant :

/* * Nom du modèle : page unique NoAds * Type de publication du modèle : publication, page, produit */ ?>

La première ligne indique le nom du panneau d'administration WP, la seconde détermine les types de publications dans lesquelles cette mise en page peut être utilisée (dans l'exemple : publication, page et produit).

Autrement dit, il vous suffit d'en faire un Nouveau modèle Pages WordPress, qui fixeront les règles d'affichage des informations sur le site pour toutes les notes ayant du contenu. Cependant, tout dépend si les codes de single.php et page.php sont différents - si tel est le cas, vous devrez alors modifier chacun d'eux.

Algorithme général d'actions :

1.C en utilisant FTP Le client FileZilla se rend sur votre hébergement dans le répertoire portant le nom du thème installé wp-content/themes/theme_name(ou enfant).

2. Copiez le fichier utilisé pour afficher les articles/pages (single.php et page.php) sur votre ordinateur local.

3. Renommez, par exemple, en page-new.php ou page-noads.php, etc. (le nom n'a pas d'importance).

5. Télécharger nouvelle option retour à l'hébergement dans le même répertoire.

Choisir un modèle de page dans WordPress

Allez maintenant dans le panneau d'administration système, ouvrez n'importe quelle publication pour la modifier et recherchez-y le bloc suivant :

Le nom affiché ici est spécifié dans la ligne Nom du modèle.

À propos, il est pratique qu'il soit disponible, c'est-à-dire que vous pouvez modifier le modèle de page pour plusieurs objets à la fois. Accédez à l'élément « Toutes les entrées », où vous marquez quelques articles et sélectionnez « Modifier » dans « Actions ».

Après avoir fait votre sélection, n’oubliez pas de cliquer sur « Mettre à jour ».

Barre latérale, en-tête, pied de page différents et plus encore

Si vous regardez attentivement le thème installé, vous verrez qu'il utilise caractéristiques standards: get_sidebar, get_header, get_footer. Si vous avez modifié votre mise en page mais que vous les avez laissés là, le site affichera le même contenu que la mise en page principale.

Regardons la situation la plus simple - nous avons un nouveau page.php corrigé, mais nous devons également faire quelques ajustements dans la barre latérale. Dans ce cas, au lieu de get_sidebar, j'utilise la construction :

Bien entendu vous devez créer le fichier correspondant barre latérale-catégorie-noads.php. Bien que, en théorie, vous puissiez immédiatement écrire du code dans une nouvelle mise en page sans inclure, la structure devient ainsi moins claire.

Il est clair que l'astuce s'applique non seulement à ces trois blocs du site, mais également à tous les autres - étudiez attentivement les codes sources que vous utilisez dans votre travail.

Modèles de publication individuels par catégorie

Il y a essentiellement deux manières ici. Personnellement, je préfère le plus simple : ouvrez un seul message single.php dans l'éditeur et placez le code :

In_category vérifie à quelle section appartient la publication : si avec ID=5, alors single-category5.php est chargé, dans sinon- single-forall.php. Bien entendu, ces deux fichiers doivent être ajoutés au FTP au préalable (vous pouvez à nouveau les copier depuis la source et les corriger légèrement) + tous les noms sont autorisés.

La deuxième option a été envisagée. Vous devez placer le code suivant dans function.php :

/* * Définir un chemin constant vers notre dossier de modèles unique */ définir (SINGLE_PATH, TEMPLATEPATH . "/single" ) ; /** * Filtrez le single_template avec notre fonction personnalisée */ add_filter("single_template" , "mon_single_template" ) ; /** * Fonction de modèle unique qui choisira notre modèle */ function mon_single_template($single) ( global $wp_query, $post ; /** * Vérifie un modèle unique par catégorie * Vérifie par slug et ID de catégorie */ foreach ((array ) get_the_category() as $cat ) : if (file_exists (SINGLE_PATH . "/single-cat-" . $cat -> slug . ".php" ) ) renvoie SINGLE_PATH . "/chat unique-" . $cat -> limace . ".php" ; elseif (file_exists (SINGLE_PATH . "/single-cat-" . $cat -> term_id . ".php" ) ) renvoie SINGLE_PATH . "/chat unique-" . $cat -> term_id . ".php" ; fin pour chaque ; )

/* * Définir un chemin constant vers notre dossier de modèles unique */ définir(SINGLE_PATH, TEMPLATEPATH . "/single"); /** * Filtrez le single_template avec notre fonction personnalisée */ add_filter("single_template", "my_single_template"); /** * Fonction de modèle unique qui choisira notre modèle */ function my_single_template($single) ( global $wp_query, $post; /** * Vérifie un modèle unique par catégorie * Vérifie par slug et ID de catégorie */ foreach(( array)get_the_category() as $cat) : if(file_exists(SINGLE_PATH . "/single-cat-" . $cat->slug . ".php")) return SINGLE_PATH . "/single-cat-" . $cat- >slug . ".php"; elseif(file_exists(SINGLE_PATH . "/single-cat-" . $cat->term_id . ".php")) return SINGLE_PATH . "/single-cat-" . $cat->term_id . ".php"; endforeach; )

Après cela, dans le répertoire du thème, créez un nouveau dossier « unique » comme /wp-content/themes/votre_theme/single/ où téléchargez-vous les fichiers dont les noms ont le format suivant single-cat-(category-slug).php, par exemple : single-cat-news.php ou articles-chat-single.php. Cette méthode Je ne l'ai pas testé personnellement, mais la source est fiable.

Nuances supplémentaires

Enfin, 2 petits commentaires. Parfois, il arrive que dans un thème premium dans le panneau d'administration, il n'y ait pas de choix de mise en page pour les publications (posts), mais que les développeurs aient implémenté des formats. Dans ce cas, vous pouvez utiliser l'un d'eux pour une sortie d'informations alternative.

La méthode, bien sûr, n’est pas la plus compétente, mais elle fonctionne. N'oubliez pas d'apporter des modifications au fichier approprié.

La deuxième astuce consiste à masquer/afficher le widget en fonction de l'option de mise en page sélectionnée. Dans ce cas, il vient à la rescousse expressions conditionnelles is_page_template ou has_post_format.

Total. Je le répète, si vous devez créer différents modèles pour les pages et les articles dans WordPress, mais que page.php et single.php eux-mêmes sont différents, alors vous créez votre propre « copie » pour chacun d'eux. Lorsque leur structure est la même, les nouvelles capacités du système vous permettent de créer une seule mise en page, où dans la description du type de publication du modèle, vous indiquez simplement les types d'objets avec lesquels il fonctionnera.

Si vous avez des questions sur la partie principale de la note et sur des nuances supplémentaires, écrivez ci-dessous et j'essaierai d'y répondre.

Les types de publications WordPress constituent le domaine le plus large pour les développeurs. WordPress comprend nativement 5 types de publication principaux : publication, page, pièce jointe, révision et menu de navigation.

Les publications et les pages sont les principaux types de publications permettant de publier du contenu sur un site Web. Et il existe plusieurs différences entre eux.

Des postes, généralement affiché dans l'ordre inverse sur page d'accueil blog, et les pages sont affichées sans date de publication. Les catégories et les balises peuvent également être attachées aux publications, mais pas aux pages (bien que cela puisse être fait dans les paramètres).

Pages peut être structuré dans l’ordre. Ceci est particulièrement utile pour organiser le contenu pour les propriétaires de sites et les visiteurs.

Les conceptions de pages peuvent également être facilement modifiées en utilisant différents modèles de page. Ils vous permettront de changer le style de n’importe quelle page de votre site.

Examinons de plus près quels modèles de pages existent et comment ils peuvent être utilisés pour un site Web.

Pourquoi ne pas utiliser différents modèles de pages ?

Les thèmes WordPress utilisent généralement un modèle page.php, qui définit le style de toutes les pages du site. La plupart des développeurs de thèmes créent un modèle page d'accueil sur le même principe. Ce modèle affiche le contenu de la page et détermine par défaut quels éléments de conception y seront présents (par exemple, en-tête, barre latérale, pied de page, etc.).

Par défaut, le modèle de page (page.php) est configuré de manière à ce que tout le contenu nécessaire soit affiché sur la page.

Créer un modèle de page unique vous permet d'aller au-delà des standards WordPress et de modifier l'affichage du contenu de votre site à votre guise. Par exemple, vous pouvez repenser vos pages en supprimant la barre latérale. Vous pouvez également modifier la police par défaut et utiliser un en-tête différent de celui proposé par la page d'accueil.

Le modèle de page personnalisée le plus connu est Archive(modèle de page d'archives archive.php). Il est disponible dans de nombreux thèmes WordPress et contient tout le contenu du site, qui est divisé en pages, catégories, balises, dates d'archives, archives d'auteurs.

De nombreux modèles d'archives affichent également liste complète articles de blog et un champ pour rechercher des articles sur le site. Essentiellement, un modèle d'archive est un plan de site qui aide un utilisateur à trouver ce qu'il recherche.

Vous pouvez trouver d’autres types de modèles de pages dans les thèmes, tels que :

  • Formulaire de contact
  • Pages sans barre latérale (barre latérale)
  • Page de destination (page de destination)
  • Index des blogs

Les possibilités de modèles de page sont infinies. Tout dépend de la commodité avec laquelle vous souhaitez rendre votre site pour l'utilisateur final.

Comment choisir un modèle pour une page ?

L'ajout d'un modèle de page est très simple. Dans l’éditeur de page à droite, vous verrez une fenêtre (widget) appelée « Attributs des pages" Il est situé sous la fenêtre " Publier».

Dans les attributs de la page, vous pouvez sélectionner la page parent et l'ordre dans lequel elle sera placée sur le site dans le champ correspondant. Et l'option entre eux vous permet de modifier le modèle. Tout ce que vous avez à faire est de sélectionner un modèle pour la page et de le mettre à jour.

Le modèle peut également être modifié d'une autre manière - via la liste de toutes les pages. Il vous suffit de cliquer sur " Propriétés».

Modifiez ensuite le modèle dans les options du menu de droite.

Les options de modèle n'apparaîtront pas si votre thème utilise uniquement un modèle de page standard.

Création d'un modèle de page de base pour le site

Créer un nouveau modèle de page pour votre site WordPress est plus facile que vous ne le pensez. Pour ce faire, vous n’avez pas besoin d’avoir une expérience dans le développement et la création de thèmes ou de plugins.

Il vous suffit d'utiliser le code page.php un modèle de thème existant comme base pour un nouveau modèle de page. Par exemple, vous utilisez un ancien thème standard Vingt douze. Déposer page.php a le code suivant :

Vous pouvez utiliser ce code pour créer un nouveau modèle de page. Pour ce faire, il vous suffit de vous assurer que le commentaire du code est placé en haut du nouveau fichier. Ceci déterminera ce fichier comme modèle de page :

/* Nom du modèle : Mon modèle de page personnalisé */

Votre modèle de page ressemblera à ceci :

Passons en revue le processus de création d'un modèle de page de base et essayons de créer un modèle de page pleine largeur. sans utiliser de barre latérale. Le thème Twenty Twelve est livré avec un modèle pleine largeur prêt à l'emploi, mais nous ferons comme si ce n'était pas le cas car nous en avons besoin pour notre didacticiel.

Dans le modèle standard, la barre latérale de la page est affichée sur le côté droit :

Modèle de page standard dans le thème Twenty Twelve

Il est facile de créer un nouveau modèle de page sans barre latérale.

Vous devez d'abord créer nouveau fichier, en utilisant n'importe quel éditeur de texte (Notepad ou Notepad++ fera l'affaire). Cela peut être appelé quelque chose de simple, par exemple, nosidebar-page.php ou page complète.php(nous parlerons des noms de fichiers un peu plus tard). Téléchargez ensuite le fichier sur votre site afin qu'il se trouve à côté du fichier page.php.

Essentiellement, notre modèle est un modèle de page.php Vingt-douze thèmes, code supprimé uniquement.

Cela ressemble à ceci :

Une fois le fichier modèle chargé dans votre thème, il peut être utilisé pour toutes les pages. Vous pouvez également lier une page à ce modèle pour supprimer sa barre latérale.

Mais ce n'est pas tout. Jusqu'à présent, nous n'avons supprimé que la barre latérale. Nous devons nous assurer que le contenu est publié sur toute la largeur de la page. En attendant, cela n’occupe que les deux tiers de la page :

Si vous regardez le code de notre modèle, vous verrez que la majeure partie du contenu est sous l'influence d'une classe CSS spécifique :

La deuxième partie class="site-content" est responsable du style de la partie principale du contenu. Si vous vérifiez le fichier de style ( style.css), vous remarquerez que cette classe se situe presque tout en bas :

Contenu du site ( float : gauche ; largeur : 65,104166667 % ; )

Afin d'étendre le contenu à la page entière, nous devons modifier la largeur de la zone de contenu de 65 % à 100% . Mais il n'est pas nécessaire de modifier la classe de contenu du site, car il est toujours utilisé dans d'autres modèles, comme la page standard page.php et modèle de publication unique.php. La modification du pourcentage du contenu du site affectera toutes les publications et pages de votre site qui remplissent toute la largeur de la page.

Nous devons donc créer nouvelle classe, qui est utilisé spécifiquement pour les pages pleine largeur :

Contenu du site pleine largeur ( float : gauche ; largeur : 100 % ; )

Après avoir mis à jour le fichier style.css Avec la classe ci-dessus, nous devons modifier notre modèle en pleine largeur de page et nous assurer de référencer la classe CSS à 100 % de largeur :

Notre modèle final ressemblera à ceci :

Ce modèle mis à jour confirme que le contenu de notre site sera affiché en pleine page :

Désormais, le contenu du site est affiché sur toute la page

Tout ce qui est indiqué ci-dessus peut être fait à tout moment Thème WordPress. Pour ce faire, supprimez la barre latérale du modèle de page que vous avez créé et assurez-vous de modifier la bonne classe de feuille de style.

Comment nommer les modèles de page

Selon la hiérarchie des modèles WordPress, WordPress affiche les modèles pour une page dans l'ordre suivant :

  • Modèle personnalisé
  • page-(slug).php
  • page-(id).php
  • page.php
  • index.php

Ce sera plus facile pour vous si vous avez une idée de l'ordre de ces motifs, car vous comprendrez ainsi pourquoi la page est conçue d'une manière particulière.

Cet ordre signifie que WordPress affichera toujours un modèle pour une page si un modèle y est attaché. Si aucun modèle n'a été ajouté à la page, WordPress recherchera page-(slug).php.

Si le modèle page-(slug).php n'est pas trouvé, WordPress recherche le modèle par ID de page. Par exemple, si l’ID de la page = 15, WordPress recherchera un modèle de page appelé 15.php.

Si le modèle n'est pas lié à la page et qu'il n'y a aucune correspondance avec l'ID de la page, WordPress recherche modèle standard pages page.php. Et si la page modèle page.php n'existe pas, alors index.php est utilisé pour la recherche.

De nombreux développeurs nomment leurs modèles de thème en utilisant le format page-name.php. Par exemple, un modèle de page de contact s'appelle page-contact.php. Dans l'ensemble, vous pouvez nommer les modèles à votre discrétion et utiliser n'importe quelle configuration, que ce soit page-name.php, name-page.php ou name.php. Dans tous les cas, vous pourrez modifier ces noms à l’avenir.

Parfois, il est nécessaire de créer une nouvelle page de site Web avec de nouvelles fonctionnalités. Par exemple, pour créer un service de vérification des sites TCI et PR dont l'installation et le fonctionnement ont été décrits dans l'article « ». Les possibilités des pages WordPress standard ne sont pas illimitées et l'exécution de scripts n'y est pas prévue, c'est pourquoi des programmeurs intelligents ont proposé une telle démarche - créer un nouveau modèle de page qui sera « en caoutchouc », c'est-à-dire qu'il le fera. pouvoir le remplir avec n’importe quelle fonctionnalité.

Créer un nouveau modèle de thème n'est pas une tâche ardue, mais pour ceux qui s'en occupent pour la première fois, ce processus peut présenter quelques difficultés. Alors par où commencer ? Tout est en ordre - tous vos fichiers de thème se trouvent dans le répertoire wp-content/themes/site theme/. Toutes les procédures peuvent être effectuées via le panneau d'administration et un éditeur de texte, par exemple Notepad ou Notepad+. Choisissez de créer un nouveau modèle de page dans le fichier page.php - ceci est un exemple de votre page thématique standard.

DANS éditeur de texte créez un nouveau fichier, qui sera le nouveau modèle de page - par exemple, nov.php, et copiez-y tout le contenu du fichier de thème page.php - ce sera le squelette de la nouvelle page. Ensuite, nous pouvons le remplir comme nous le souhaitons.

Le fichier de page standard contient un appel à l'en-tête, au pied de page, à la barre latérale ou à plusieurs du site (si le modèle de thème en contient plusieurs) et au contenu de la page elle-même, ainsi que la sortie de commentaires et d'autres éléments utiles. Mais afin d'organiser un nouveau modèle, vous devez spécifier le code suivant tout en haut de la page nov.php :

Il n'est pas nécessaire que le nom soit en majuscule. Ensuite, si vous décidez que vous n’avez pas besoin de certains éléments de la page (par exemple les lignes, , ), ils peuvent être supprimés. Mais cela s'applique déjà à la formation du design de la page. Nous faisons désormais du sale boulot. Autrement dit, en utilisant des lignes d'appel à certaines fonctions, vous pouvez modifier le modèle de page principale au-delà de toute reconnaissance.

Mais comment faire en sorte que cette page remplisse certaines fonctions auxiliaires, c'est-à-dire les principales ? Il est nécessaire de préciser l'action que cette page effectuera, c'est-à-dire rediriger la fonction vers la page modèle chargée d'exécuter le script. En langage de programmation, cela s'appelle "inclure". Pour nous, ce sera la ligne, où le chemin TEMPLATEPATH.”/mmouse-whois.php désigne le chemin d'accès au fichier qui représente service whois– vérification des noms de domaine. Vous pouvez organiser n'importe quelle exécution de scripts - sondages, compteurs, etc.

Dans mon cas, la page nov.php remplit deux fonctions. Autrement dit, si nous prenons un exemple, le fichier mmouse-whois.php vérifie le domaine par l'adresse de la ressource, et le fichier pagenavi.php vérifie l'occupation du domaine par l'adresse IP du client. Autrement dit, sur la page nov.php, deux fonctions sont exécutées en même temps. Mais pour que cela fonctionne, votre nouvelle page nécessite la présence de tels fichiers dans le répertoire du thème, c'est-à-dire que vous devez les y télécharger.

Après avoir accompli toutes ces tâches, revenez à la console de votre site et créez nouvelle page de la même manière qu'ils le faisaient auparavant. Mais maintenant, vous aurez la possibilité de choisir non pas le modèle de page de base, mais un nouveau modèle qui vient d'être créé. Voici à quoi cela ressemblera :

Votre nouveau modèle de thème a maintenant été créé. Vous pouvez le modifier à votre guise - supprimer ou ajouter une barre latérale, installer un nouveau fichier d'en-tête de thème ou transformer le pied de page du fichier. Mais c'est un sujet pour un autre article. Et pour l'exemple ci-dessus, une page de travail existante et de travail ressemble à ceci :

Dans cet article, je parlerai des façons de créer des modèles pour les pages persistantes WordPress. Chaque méthode a ses avantages et ses inconvénients. Mais avant de commencer, parlons un peu de ce que sont les pages et en quoi elles diffèrent des publications.

Dans WordPress, vous pouvez créer des pages (pages) et des publications (posts). Ils diffèrent en ce que les publications : apparaissent dans le fil de la page principale ; Les catégories sont indiquées pour les entrées ; les publications ne peuvent pas être arborescentes et les pages : sont utilisées pour des contenus tels que « À propos de moi », « Contacts », « Plan du site » ; n'ont pas de catégories, mais ont une structure arborescente. Les entrées sont généralement destinées à des informations chronologiques (en fonction de l'heure à laquelle elles ont été ajoutées) et les pages sont destinées à une structure arborescente indépendante du temps. Par exemple, cet article est publié sous forme d'« entrée » dans la section « Code », et des liens dans le menu d'en-tête mènent vers les pages : Fonctions.

Les pages sont similaires aux enregistrements - elles sont situées dans la même table de base de données et leurs données sont presque les mêmes : titre, texte, champs supplémentaires, etc. Les deux sont des records, mais différents types: Les pages ressemblent à une arborescence et sont organisées en créant des pages parent et enfant, et les publications sont organisées par catégories et balises. Dans WordPress, vous pouvez créer des types de publications supplémentaires, arborescentes ou non.

Créer des pages dans WordPress

Vous devez souvent créer un modèle de page distinct afin que les informations affichées diffèrent des autres pages. En créant un modèle de page dans WordPress, vous pouvez changer complètement la page : supprimez la barre latérale, le pied de page, l'en-tête, vous pouvez modifier la page de manière méconnaissable. Par exemple, sur ce site, la page sur laquelle sont affichés les codes des fichiers WordPress est ainsi modifiée.

Méthode 1 : modèle de page utilisant un fichier avec un nom personnalisé et le connectant dans le panneau d'administration (méthode classique)

C’est la manière la plus courante de créer un modèle de page dans WordPress. Pour ce faire, vous devez créer un fichier .php, par exemple tpl_my-page.php dans le dossier du thème et au tout début du fichier, écrire une note indiquant que le fichier créé est un modèle de pages :

Désormais, lors de la création d'une page dans le panneau d'administration, dans le bloc « Propriétés de la page », nous pouvons sélectionner un « modèle » :

À partir de WordPress 4.7. De tels modèles de page peuvent être créés pour tout type de publication, pas seulement pour une page. Pour cela, complétez les commentaires avec la ligne : Template Post Type : post, page, où post, page sont les noms des types de publication auxquels appartient le modèle.

/* Nom du modèle : Mon modèle de page Type de publication du modèle : publication, page, produit */

Avantages :

    Après avoir créé un modèle, nous pouvons facilement l'utiliser pour différentes pages. Par exemple, vous pouvez créer un modèle sans barre latérale et l'utiliser sur différentes pages.

  • Seuls les enregistrements avec le modèle spécifié peuvent être récupérés. Par exemple, vous pouvez afficher toutes les pages avec le modèle « Services » (fichier servises.php). Parfois, c'est pratique. Le nom du fichier modèle est stocké dans le métachamp _wp_page_template, donc pour afficher les pages avec le modèle spécifié, vous devez créer une requête à l'aide du métachamp (voir WP_Query).

Défauts:

Après avoir créé le fichier modèle dans le dossier du thème, vous devez accéder au panneau d'administration et installer le modèle pour la page. Ce n’est pas toujours pratique lors du développement. Par conséquent, si vous avez l'intention d'utiliser le modèle pour une seule page, utilisez la deuxième méthode.

Comment ça fonctionne:

Lorsque vous accédez au panneau d'administration pour modifier une page de publication d'arborescence, WordPress analyse tous les fichiers de modèle pour la ligne :

Nom du modèle : ***

La ligne peut être située n'importe où et de n'importe quelle manière dans le fichier.

Tous les fichiers avec des chaînes similaires sont collectés et affichés dans la sélection de modèles dans le bloc « Attributs de la page ».

Lors de la publication d'une page, le champ personnalisé _wp_page_template est renseigné avec le nom du fichier modèle ou par défaut si aucun modèle n'est spécifié :

Wp_page_template = par défaut
_wp_page_template = tpl_my-page.php

Ensuite, lorsque l'utilisateur visite la page, WordPress vérifiera le champ méta _wp_page_template, si le modèle est installé, alors le fichier modèle est utilisé. Sinon, la recherche du modèle de page se poursuit dans la hiérarchie.

Méthode 2 : modèle de page via un fichier avec un nom spécifique (hiérarchie des fichiers modèles)

Lorsqu'une page est créée, un label (slug, nom alternatif). Il est utilisé dans l'URL de la page. Et cela peut être modifié :


Pour créer un modèle de cette façon, vous devez connaître le slug de la page et créer un fichier dans le dossier du thème. Disons que notre slug, comme sur l'image, est égal à contacts , alors nous créerons un fichier page-contacts.php dans le thème. et remplis-le le code requis(vous pouvez copier le contenu du fichier modèle page.php et le modifier à votre guise). Voilà, maintenant, lorsque nous visitons la page, nous devrions voir un nouveau modèle. De même, vous pouvez prendre l'ID (que ce soit 12) de la page et créer un fichier page-12.php .

Avantages :

Il n'est pas nécessaire d'accéder au panneau d'administration et d'installer le fichier modèle. Le modèle commence à fonctionner immédiatement après la création du fichier. Pratique pour le développement.

Défauts:

Le modèle est créé uniquement pour une page spécifique. Cela dépend du slug de la page ; s’il change, le modèle ne fonctionnera pas. Si vous utilisez ID, la dépendance à l'égard du slug disparaît, mais il devient difficile de savoir dans le fichier de thème à quelle page appartient le modèle (s'il existe plusieurs modèles avec ID).

Presque inutile lors de l’écriture de modèles, et encore plus de plugins. Il peut être utilisé lorsque vous modifiez votre site Web, dans lequel le slug ou l'ID de la page est connu à l'avance.

Comment ça fonctionne:

WordPeress sélectionne le fichier à utiliser dans l'ordre suivant (les fichiers doivent être à la racine du thème) :

  • (any_name).php (lors de l'utilisation d'un modèle de page)
  • page-(post_label).php
  • page-(post_ID).php
  • page.php
  • singulier.php
  • index.php

Méthode 3 : modèle de page via le filtre "template_include" (codage)

Il s'agit d'une méthode avancée, elle est plus complexe, mais avec sa complexité, elle ouvre de larges possibilités. En utilisant cette méthode, vous pouvez définir un modèle pour n'importe quelle page, article, catégorie, n'importe quelle publication sur le site ou même un groupe de publications. Voir des exemples avec des descriptions :

// le filtre transmet la variable $template - le chemin d'accès au fichier modèle. // En changeant ce chemin, nous modifions le fichier modèle. add_filter("template_include", "mon_template"); function my_template($template) ( # similaire à la deuxième méthode // s'il s'agit d'une page avec le slug de portfolio, utilisez le fichier modèle page-portfolio.php // utilisez la balise conditionnelle is_page() if(is_page("portfolio" ))( if ($new_template = Locate_template(array("page-portfolio.php"))) return $new_template ; ) # modèle pour le groupe de catégories // cet exemple utilisera le fichier du dossier de thème tpl_special-cats.php, // comme modèle pour les catégories avec l'ID 9 , le titre "Uncategorized" et le slug "php" if(is_category(array(9, "Uncategorized", "php")))( return get_stylesheet_directory() . "/tpl_special-cats. php"; ) # modèle pour la saisie par ID // le fichier modèle se trouve dans le dossier du plugin /my-plugin/site-template.php global $post; if($post->ID == 12)( return wp_normalize_path( WP_PLUGIN_DIR) . "/my-plugin/site- template.php"; ) # modèle pour les pages d'un type personnalisé "book" // on suppose que le fichier modèle book-tpl.php se trouve dans le dossier du thème global $post ; if($post->post_type == "book")( return get_stylesheet_directory() . "/book-tpl.php"; ) renvoie $modèle ; )

Ce code doit être placé dans le fichier function.php du thème ou dans un plugin, ou connecté d'une autre manière. Comme vous pouvez le voir sur l'exemple, lors du filtre template_include, les balises conditionnelles fonctionnent déjà, les variables globales sont définies : $wp_query , $post , etc.

Avantages :

    Vous pouvez définir un modèle pour n'importe quelle page ou groupe de pages. Carte blanche presque complète dans les actions.

  • Vous pouvez créer un modèle lors de l'écriture d'un plugin.

Défauts:

La nécessité d’écrire du code et de le connecter séparément (par exemple, dans le fichierfunctions.php du thème).

Il est souvent nécessaire de donner à une page de blog WordPress un style distinct, différent de la conception principale du blog. Cela se fait en utilisant la tâche sur cette page modèle séparé. Voyons comment tout cela est mis en œuvre.

Vous devez d'abord le créer vous-même modèle de page. Pour ce faire, vous pouvez simplement éditer le fichier page.php, qui se charge d'afficher les pages permanentes.

Nous créons une copie de ce fichier et l'appelons, par exemple, page_extra.php (le nom peut être n'importe quoi). Après cela, ouvrez-le dans un éditeur de texte et modifiez le contenu selon nos besoins. Par exemple, si vous devez modifier l'en-tête, vous pouvez créer fichier séparé header_extra.php (le nom n'a pas d'importance), et dans le fichier page_extra.php au lieu de get_header(); insérer include("header_extra.php");. Nous pouvons de la même manière modifier d’autres blocs de la page.

Maintenant, au tout début du fichier page_extra.php, nous écrivons

1 2 3 4 5

Ce sera le nom de notre nouveau modèle. Voilà, enregistrez le fichier et placez-le dans le dossier avec thème établi! Nous y envoyons également tous les fichiers nouvellement créés (header_extra.php).

Nous devons maintenant appliquer ce modèle à page souhaitée. Cela peut être fait via le panneau d'administration du blog. Pour ce faire, créez une page ou accédez au panneau d'administration WordPress pour modifier les pages et remplacez le modèle de la page requise par celui que vous venez de créer.



Vous pouvez également écrire le code suivant dans le fichier page.php :

Pour les versions WordPress à partir de 2.8, tout ce qui précède peut être effectué en utilisant une autre méthode. Pour ce faire, nous utilisons la fonction :. Il doit être inclus dans la balise dans le fichier header.php de votre thème.

En conséquence, le texte des titres de troisième niveau deviendra 18px, et uniquement sur les pages statiques, ou

1 2 3 #post-2 ( couleur : rouge ; )

Ce code changera la couleur du texte du message ID 2 en rouge.

Voici une liste complète des classes de corps qui peuvent être utilisées pour les styliser :

  • archive
  • recherche
  • paginé
  • pièce jointe
  • Erreur 404
  • postid unique- (id)
  • identifiant de pièce jointe- (identifiant)
  • pièce jointe- (type MIME)
  • auteur
  • nom de l'auteur)
  • catégorie
  • Nom de catégorie)
  • tag- (nom)
  • page-parent
  • page-enfant parent-pageid- (id)
  • modèle de page modèle de page- (nom du fichier modèle)
  • Résultats de recherche
  • recherche-aucun-résultat
  • connecté
  • paginé- (numéro de page)
  • page unique- (numéro de page)
  • page-paginé- (numéro de page)
  • catégorie-paged- (numéro de page)
  • tag-paged- (numéro de page)
  • date-paginé- (numéro de page)
  • auteur-paginé- (numéro de page)
  • recherche-paged- (numéro de page)