将JS添加到多个插件管理页面

时间:2010-12-20 作者:mikkelbreum

对于具有多个管理屏幕(有自己的主菜单和一些子菜单)的WP主题,我想添加一个公共Js脚本来加载(仅)所有这些页面。

我知道如何使用各个(子)页面的页面挂钩来实现这一点,例如:

add_action(\'admin_print_scripts-\' . $page, \'my_plugin_admin_script\');
但这样,我需要为每个管理页面(每个子菜单pagehook)重新使用它

有没有更聪明的方法来添加脚本,测试父菜单?所以我只需要添加一行admin\\u print\\u脚本-*代码?

1 个回复
最合适的回答,由SO网友:t31os 整理而成

在上运行一些条件逻辑是最容易的$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...

然后,脚本将为父页面及其任何子页面排队。。

希望这有助于。。。

结束

相关推荐

如何将外部jQuery/Javascript文件与WordPress链接

因此,我使用Starkers作为我下一个WP主题的基础,我遇到了一个小问题,我在header.php 但是当我使用Firebug检查我的网站时,我注意到jquery被下载了两次,我做了一些挖掘,并注意到我不仅包括了文件,还包括了wp_head() 作用在尝试修复该问题时,我注意到头文件中有一条注释,该注释源于“210”主题:/* Always have wp_head() just before the closing </head> * tag of your theme, or