Je souhaite ajouter un texte utile à l'écran edit-tags décrivant l'utilisation appropriée de chacune de mes taxonomies personnalisées.
Je vois dans le Codex qu'une description peut être ajoutée à une taxonomie personnalisée - pas à un terme, mais à la taxonomie elle-même. Ce serait un endroit idéal pour mettre mon texte d'aide, et j'ai, mais je ne vois pas où c'est rendu du tout.
Du Codex:
description (chaîne) (facultatif) Inclut une description de la taxonomie. Défaut: ""
Dans le tableau $ args de ma fonction de taxonomie personnalisée:
$args = array( 'description' => 'Some helpful text!' [other args...] );
Existe-t-il un crochet pour les balises de montage que je peux utiliser pour afficher la description de la taxonomie, ou une autre solution (ACF peut-être) pour insérer du texte d'aide ici?
Le code pour l'endroit où vous avez encerclé peut être trouvé dans wp-admin/edit-tags.php:295
Vous remarquerez qu'il n'y a rien là-bas. Pas de crochets, pas de filtres. Vous n'avez pas la chance de puiser dans cela proprement.
Heureusement, vous pouvez utiliser une méthode de ruban adhésif en toile pour l'ajouter à jQuery. Vous pouvez placer dynamiquement du texte autour duquel vous avez entouré en faisant quelque chose comme:
add_action( 'admin_head', function(){
global $wp_query;
$screen = get_current_screen();
if ($screen->base == 'edit-tags' || $screen->base == 'term') {
$mytax = get_taxonomy($screen->taxonomy);
if (!empty($mytax->description)) {
?>
<script>
jQuery(window).load(function() {
jQuery('.wrap h1').after("<p class='description'><?php echo $mytax->description ?></p>");
});
</script>
<?php
}
}
});
Comme vous l'avez fait remarquer avec @Slam, vous pouvez utiliser les points d'ancrage _pre_add_form
et _term_edit_form_top
pour afficher le dans la zone que vous recherchez. Pour ce faire, vous pouvez parcourir toutes les taxonomies et exécuter les actions de manière dynamique de la manière suivante:
add_action( 'admin_init', function(){
$taxonomies = get_taxonomies();
foreach ( $taxonomies as $taxonomy ) {
add_action("{$taxonomy}_pre_add_form", 'my_plugin_tax_description');
add_action("{$taxonomy}_term_edit_form_top", 'my_plugin_tax_description');
}
});
function my_plugin_tax_description() {
global $wp_query;
$screen = get_current_screen();
if ($screen->base == 'edit-tags' || $screen->base == 'term') {
$mytax = get_taxonomy($screen->taxonomy);
if (!empty($mytax->description))
echo "<p class='description'>{$mytax->description}</p>";
}
}
Bien que _pre_add_form
soit déclenché dans la colonne de gauche - pas directement sous le titre h1.
Aux commentaires de @David Sword: Si vous souhaitez utiliser la description de taxonomie standard (dans les étiquettes), utilisez ce code:
function my_plugin_tax_description() {
global $wp_query;
$screen = get_current_screen();
if ($screen->base == 'edit-tags' || $screen->base == 'term') {
$mytax = get_taxonomy($screen->taxonomy);
if (!empty($mytax->labels->description))
echo "<p class='description'>{$mytax->labels->description}</p>";
}
}