Pour un thème WP avec plusieurs écrans d’administrateur (avec son propre menu principal et certains sous-menus), je souhaite ajouter un script Js commun à charger (uniquement) sur toutes ces pages.
Je sais comment y parvenir en utilisant les crochets de page des pages individuelles, comme ceci:
add_action('admin_print_scripts-' . $page, 'my_plugin_admin_script');
mais de cette façon, je dois répéter cette opération pour chaque page d'administration (pour chaque pagehook de sous-menu)
Existe-t-il un moyen plus intelligent d’ajouter les scripts en testant le menu PARENT? de sorte que je dois juste l'ajouter avec une ligne de code admin_print_scripts- *?
Il serait plus facile d'exécuter une logique conditionnelle sur $parent_file
à l'intérieur d'un rappel relié à admin_print_scripts
, et irait un peu comme ça.
add_action( 'admin_print_scripts', 'possibly_enqueue_script' );
function possibly_enqueue_script() {
global $parent_file;
if( 'my-slug' == $parent_file )
wp_enqueue_script( ... your enqueue args .. );
}
Vous devrez remplacer my-slug
par le descripteur de votre page parent, il s’agit du quatrième paramètre de add_menu_page
...
Le script se mettra ensuite en file d'attente pour la page parent et pour l'une de ses pages enfants.
J'espère que cela pourra aider...