質問: 複数のプラグイン管理ページにjsを追加する 複数の管理画面を持つwpテーマ(それ自身のメインメニューといくつかのサブメニューを持っています)のために、私は共通のjsスクリプトを追加してこれらすべてのページをロードします。私はこれを好む個々の(サブ)ページのページフックを使ってこれを達成する方法を知っています:add_action('admin_print_scripts-' . $page, 'my_plugin_admin_script'); しかし、このように私は各管理ページ(各サブメニューpagehook)に対してこれを作り直す必要がありますスクリプトを追加してparentメニューをテストするより賢い方法はありますか?だから私はadmin_print_scripts- *コードの一行でそれを追加する必要があるように?
回答: $parent_fileにフックされたコールバック内でadmin_print_scriptsに対して条件付きロジックを実行するのが最も簡単で、このような小さなことをします。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 .. ); } あなたはあなたの親ページのハンドルでmy-slugを取り替える必要があるでしょう、それはadd_menu_page..の4番目のパラメータです。その後、スクリプトは親ページとそのすべての子ページの両方をエンキューします。それが役立つことを願っています...