Lorsque vous activez un thème wordpress, il est toujours fastidieux de savoir quel fichier utiliser pour changer les choses. Une idée de comment simplifier les choses?
Mais d'un autre côté, compte tenu de la fonctionnalité get_template_part, cela peut être impossible. Que dis-tu?
Réponses:
Accrochez-vous
template_include
, définissez une variable globale pour noter le modèle défini par le thème, puis relisez cette valeur dans le pied de page ou dans l'en-tête pour voir quel modèle est appelé pour une vue donnée.J'ai déjà parlé de ce crochet de filtre dans Obtenir le nom du fichier de modèle actuel , mais allez récupérer une copie de ce code et copiez-le dans le
functions.php
fichier de votre thème .Puis ouvrez le thème
header.php
oufooter.php
(ou où que vous soyez) et utilisez ce qui suit pour imprimer le modèle actuel.Si vous souhaitez utiliser cela sur un site de production et garder ces informations à l'écart de vos utilisateurs non-administrateurs, ajoutez un peu de logique conditionnelle.
Vous pouvez désormais suivre les vues en utilisant quel modèle, tout en gardant ces informations à l'écart de vos visiteurs.
la source
get_page_template
Eh bien, si tout ce que vous voulez, c'est vérifier quel fichier de gabarit a été utilisé pour générer la page actuelle, vous n'avez pas besoin de vous salir les mains avec du code;)
Il y a ce plugin pratique appelé Debug Bar . C'est une aide précieuse dans de nombreuses situations, y compris la vôtre. Vous devriez absolument y jeter un coup d'œil - pour moi et beaucoup d'autres, c'est un compagnon indispensable pour tout développement WP.
J'ai joint une capture d'écran qui pourrait vous faire tomber amoureux ...
Pour obtenir la barre de débogage travail , vous devez activer
wp_debug
etwp_savequeries
options. Ces options sont désactivées par défaut.Avant de procéder à des modifications, il convient de garder quelques points à l’esprit:
Pour faire les changements:
wp_config.php
fichier via un client FTP.wp_debug
option. Modifiez-ledefine( 'WP_DEBUG', true );
. Si la ligne n'est pas présente, ajoutez-la au fichier.define( 'SAVEQUERIES', true );
au fichier.Plus d'infos: Codex
la source
WP_DEBUG
etSAVEQUERIES
, bien qu'il soit amélioré par eux.J'utilise cette fonction pratique qui affiche le modèle actuel uniquement pour les super-administrateurs:
J'espère que ça t'as aidé. :)
la source
Ajoutez le code suivant juste après la ligne get_header dans chaque fichier de modèle pertinent:
Dans votre navigateur> voir la source, le nom du modèle sera affiché comme un commentaire dans votre code HTML, par exemple:
la source
Le moyen le plus simple que j'ai trouvé est d'inclure la fonction WordPress sur la balise body. Il va ajouter plusieurs classes en fonction de la page affichée (home pour le premier plan, page pour page, etc.).
Découvrez-le ici: http://codex.wordpress.org/Function_Reference/body_class
De plus, il est utile de cibler des éléments avec CSS sur ces pages.
Apprendre à connaître la hiérarchie des modèles (http://codex.wordpress.org/Template_Hierarchy), comme l'a mentionné David R, est également une bonne idée.
la source
Il existe un autre plug-in plus simple, spécialement conçu à cet effet. Je suis plutôt enclin à installer la barre de débogage, car ces autres fonctionnalités semblent utiles, mais celle-ci est plus simple et plus spécifique à cette fin: http://wordpress.org/extend/plugins/what-the-file/
la source
Une chose très simple que je fais est d’insérer un commentaire HTML identifiant le fichier modèle dans chaque fichier pertinent du thème, par exemple en haut de index.php.
et en haut de front-page.php
Mais évidemment, cela nécessite de modifier le thème. Je suppose que vous pourriez ajouter une fonction personnalisée dans le fichier footer.php ou dans le fichier header.php, qui indiquerait le fichier utilisé. La méthode ci-dessus et le tableau de référence http://codex.wordpress.org/Template_Hierarchy sont ce que j'ai tendance à utiliser.
la source
Il y a un plugin nommé Theme Check qui fait exactement cela. Il affiche le nom du fichier de modèle actuel utilisé comme commentaire HTML.
la source
Voici:
Une liste HTML contenant tous les fichiers de modèle utilisés pour la page d'arrivée actuelle, y compris toutes les parties de modèle de plug-ins, de thème enfant et / ou de combinaison de thème parent , le tout dans une seule ligne de code:
Vous POUVEZ peut-être avoir besoin de vérifier que votre serveur ne renvoie aucune barre oblique double . N'oubliez pas de placer ceci après que tous les fichiers de modèle aient été utilisés, comme dans footer.php, mais avant que la barre d'administration ne soit restituée .
Si
admin-bar stuff
path est affiché en haut, ou dans tout autre fichier, remplacez le nomtemplate-loader.php
de fichier dans cette ligne de code par: quel que soit le nom de fichier que vous souhaitez interrompre. Souvent:class-wp-admin-bar.php
si vous en avez besoin dans la barre d’administration, utilisez la bonne priotité (la plus ancienne) pour vous assurer qu’aucun fichier n’est entré à la fin de cette liste. Par exemple:
La priorité est de
-5
faire en sorte qu'elle soit chargée en premier. La clé est d'appelerget_included_files()
au bon moment, sinon un peu de tableau-popping est nécessaire!Pour rompre cela:
Vous ne pouvez pas collecter tous les fichiers de modèle inclus sans trace PHP. Les superglobales à l' intérieur
template_include
ne les collecteront pas tous . L'autre façon consiste à "placer un marqueur" dans chaque fichier de modèle, mais si vous devez d'abord interagir avec les fichiers, vous aurez du temps et de l'idée.1) Nous devons vérifier à l'intérieur de tous les fichiers qui ont été utilisés par la demande actuelle de Wordpress. Et ils sont nombreux! Ne soyez pas surpris si vous utilisez 300 fichiers avant même que votre functions.php soit enregistré.
Nous utilisons la méthode native get_included_files () de PHP, qui convertit les barres obliques inverses en barres obliques pour correspondre à la plupart des chemins de retour Wordpress.
2) Nous coupons ce tableau à partir duquel le template-loader.php est enregistré. Après cela, get_included_files () ne devrait avoir que des fichiers de modèle remplis.
3) Raccourcissez les résultats. Nous n’avons pas besoin du chemin jusqu’à ce que le dossier de thème ou le dossier de plug-in, en tant que modèles utilisés, puisse être mélangé à partir de dossiers de plug-ins, de thèmes ou de thèmes enfants.
4) Enfin, convertissez un tableau en une belle liste HTML
Une dernière modification peut être nécessaire dans part3) -replacement , si vous ne voulez pas d' inclusions obligatoires par plugins. Ils peuvent appeler en
class-files
retard et "intercepter" pendant le traitement de sortie du modèle.Cependant, j’ai trouvé raisonnable de les laisser visibles, car l’idée est de suivre ce qui a été chargé , même si ce n’est pas un "modèle" qui restitue la sortie à cette étape.
la source