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
$lastje 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
$aun format HTML contenant les auteurs, un lien vers leur site. - Je concatène
$aavec la fonction WordPresswp_sprintf()et le paramètre%lqui 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
$adans 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_metasinon … 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