plugin_row_meta : Le hook de la semaine n°13

Park Row
plugin_row_meta
est un hook de type action qui vous permet d’ajouter, modifier et supprimer des liens ou du texte.

Kings Row
L’idée est simple, j’ai besoin de pouvoir afficher tous les auteurs d’un plugin. Si le plugin n’est pas activé, un seul auteur apparait, tant pis. Mais une fois actif, je veux pouvoir afficher tout le monde car j’estime que tout le monde mérite d’avoir son nom ici.
J’utilise donc le hook plugin_row_meta
et c’est relativement simple (oui c’est subjectif) :
- Je commence donc par déclarer mon action sur le hook précité, puis ma fonction. Remarquez que l’action prends 2 paramètres qui sont 10 et 2, 2 car j’ai besoin de 2 paramètres dans ma fonction.
- Première chose à faire, sachant que ce hook est déclenché sur la page des plugins et une fois par plugin à afficher, je vérifie que je suis en train de tester MON plugin. J’utilise le 2ème paramètre, vérifié avec
plugin_basename()
qui est une modification debasename()
à la sauce plugin. Je lui donne mon fichier avec la variable magique__FILE__
. WordPress en ressort quelquechose commedossier/fichier.php
. - Ensuite avec
$last
je vais garder en mémoire le dernier item des actions passées via le paramètre$plugin_meta
. Le dernier étant le lien vers le site du plugin. Puis dans le même ordre d’idée je supprime les 2 derniers items qui sont donc ce fameux lien du plugin et l’auteur. J’utilise iciarray_slice()
. - Je peux maintenant déclarer mes auteurs via
$authors
, je leur assigne un nom et une URL. - Hop, on se fait une boucle qui va ajouter des items dans le tableau
$a
un format HTML contenant les auteurs, un lien vers leur site. - Je concatène
$a
avec la fonction WordPresswp_sprintf()
et le paramètre%l
qui nous permets de séparer les auteurs avec des virgules, et les 2 derniers par un « et » (ou juste un ‘et’ s’il sont 2). - Il ne me reste plus qu’a ajouter
$a
dans une nouvelle entrée de$plugin_meta
, et je rajoute ensuite le site du plugin que j’avais supprimé au tout début. - N’oubliez pas le
return $plugin_meta
sinon … aucun lien (je suis fils unique).
Fraternity Row
Pour information, le plugin « Pastacode » va arriver dans les jours qui suivent, il s’agit du plugin qui ajoute une coloration syntaxique au code posté ci-dessus, grà¢ce à PrismJS.
Réagir à cet article