Comment afficher les ID de publication et de page dans l'administrateur WordPress
Publié: 2015-02-14De temps en temps, il serait pratique de connaître l'ID d'un article ou d'une page dans WordPress, n'est-ce pas ?
Que ce soit pour un shortcode, lors de la configuration de quelque chose dans les paramètres du thème, ou peut-être simplement pour obtenir un lien rapide.
Quoi qu'il en soit, WordPress ne facilite pas la détermination de l'ID d'un article. Une façon de le saisir est de visiter la page d'édition d'un message et de vérifier l'URL. Ça devrait ressembler a quelque chose comme ca:
https://votresiteweb.com/wp-admin/post.php?post=137171&action=edit
Le 137171 dans l'exemple ci-dessus est l'ID de la publication - l'identifiant principal dans la base de données. Il doit sûrement y avoir un moyen plus simple de le comprendre, n'est-ce pas? Heureusement, il y en a.
- Afficher les identifiants de publication avec un plugin
- DIY : Afficher les identifiants de publication avec le code
- Ajout de colonnes personnalisées
- Trouver les bons crochets
- Placer l'ID devant
- Conclusion
Afficher les identifiants de publication avec un plugin
La solution la plus simple est d'utiliser un plugin. Le grand-père est Reveal IDs, un plugin gratuit qui enregistre un peu plus de 425 000 téléchargements.
Une autre nouvelle option est WPsite Show IDs.
Les deux plugins font à peu près la même chose : afficher l'ID des publications, des pages, des utilisateurs, des catégories, des taxonomies personnalisées, des types de publication personnalisés, etc. La seule raison pour laquelle je me penche vers WPsite Show IDs est l'empreinte de 8 Ko. Reveal Ids fait environ 311Ko, ce qui semble un peu excessif pour un plugin aussi simple.
DIY : Afficher les identifiants de publication avec le code
Si vous souhaitez savoir comment afficher vous-même les identifiants de publication, examinons le code.
Le code ci-dessous doit aller dans un plugin ou dans le fichier de fonctions de votre thème. Si vous souhaitez créer un plugin, consultez notre guide de développement de plugins pour un modèle simple.
Avant de commencer, il convient également de dire que vous devez créer un thème enfant. Consultez notre guide des thèmes enfants si vous ne savez pas encore comment en créer un.
Ajout de colonnes personnalisées
WordPress offre d'excellents outils pour modifier les listes de publications d'administration, y compris la création de vos propres colonnes et contenus. Nous devrons utiliser un filtre pour ajouter la colonne et une action pour ajouter les valeurs. Faisons un test rapide sur le tableau des publications régulières :
C'est tout ce dont nous avons besoin. Le filtre permet d'ajouter une colonne en modifiant le tableau des colonnes. La clé du tableau doit être l'identifiant de la colonne et la valeur sera affichée comme texte d'en-tête.
La fonction accrochée à l'action prend deux paramètres : le nom de la colonne et l'identifiant du post est affiché. C'est parfait - nous nous assurons de simplement faire écho à l'ID lorsque notre colonne personnalisée est affichée.
La fonction "revealid" est ma tentative de jeu de mots, désolé pour ça ! Il est conçu comme un préfixe pour toutes nos fonctions afin de s'assurer qu'elles n'entrent pas en collision avec d'autres plugins.
Un aparté rapide : notez comment j'ai utilisé 'revealid_id' == $column
, ce qui semble un peu étranger. Ceci s'appelle une condition Yoda et est préféré dans WordPress. Le raisonnement est que si vous oubliez de définir la variable, vous n'obtiendrez pas une énorme erreur PHP béante sur votre page.
Trouver les bons crochets
Les deux fonctions ci-dessus sont tout ce dont nous aurons besoin. La pièce restante du puzzle est de savoir où les accrocher. Les crochets que nous avons utilisés ciblent uniquement les publications régulières et nos identifiants n'apparaîtront pas pour les pages ou d'autres éléments.
En réalité, ces crochets sont appelés crochets variables car ils appartiennent à un ensemble standardisé. La forme courante est : manage_[post_type_or_element]_columns
et manage_[post_type_or_element]_custom_column
.

Sur cette base, les publications, les pages, les médias et les types de publication personnalisés devraient être faciles, car ce sont tous des types de publication. Pour que les identifiants s'affichent pour tous ces éléments, vous pouvez utiliser les crochets suivants :
Petite mise en garde ici : tout, sauf les articles et les pages, utilise les types d'articles. Le type de publication pour les publications est techniquement "post", le type de publication pour les pages est "page". Pour une raison quelconque, les crochets utilisent la forme plurielle. C'est une bizarrerie de WordPress puisqu'il devrait vraiment s'agir de la forme singulière. Vous voyez, même le noyau de WordPress n'est pas parfait.
J'y ai ajouté un type de message personnalisé : project. Et si vous souhaitez appliquer cela à tous les types de publication personnalisés ? Dans ce cas, vous pouvez les parcourir facilement comme ceci :
Je recommande la même approche lorsqu'il s'agit de taxonomies. Pour générer l'ID des catégories uniquement, vous pouvez utiliser manage_edit-link-categories_columns
et manage_link_categories_custom_column
, mais pour l'ajouter à toutes les taxonomies, nous devons utiliser une autre boucle :
Enfin, nous avons des utilisateurs et des commentaires. Celles-ci sont également assez simples. Regarde:
Placer l'ID devant
Ce petit changement est un peu plus difficile qu'il n'y paraît. Lorsque nous avons ajouté la colonne ID, nous l'avons ajoutée à la fin d'un tableau existant contenant toutes les autres colonnes. La solution semble assez simple : ajoutez-le à l'avant. Nous pourrions le faire en fusionnant des tableaux, mais il s'avère que la case à cocher est la première colonne - nous voulons en fait l'ID à la deuxième place.
Nous utiliserons toujours la fusion de tableaux, mais nous avons besoin d'un peu plus de ruse - nous devons d'abord le diviser. Le premier tableau contiendra la case à cocher (le premier élément du tableau d'origine), le second tableau contiendra tout le reste. Nous allons fusionner le premier tableau avec un tableau contenant notre ID puis avec le second tableau. Le code devrait rendre cela beaucoup plus clair:
Conclusion
Je pense que c'est un excellent exemple de la modularité de WordPress. Les identifiants étaient autrefois affichés dans l'administrateur (pré-WordPress 2.5), mais il s'est avéré que peu de gens en avaient besoin. Une fois cette fonctionnalité supprimée, des plugins ont vu le jour pour répondre aux besoins de ceux qui souhaitaient toujours voir les identifiants de publication.
L'écriture de notre propre plugin donne un aperçu de la modularité de WordPress et de la facilité avec laquelle il est possible de modifier l'administrateur lui-même. La même méthode décrite ci-dessus peut être utilisée pour ajouter des vignettes, des extraits de description et d'autres informations au tableau de la liste des administrateurs.
Mots clés: