wp_enqueue_script

wp_enqueue_script()函数的功能,就是安全的将JS脚本添加到WordPress程序生成的页面当中,该函数只会加载wordpress初始时没有被加载的JS脚本,并且能安全的处理该JS脚本的依赖关系。使用wp_enqueue_script()函数来添加JS脚本文件,可以减少问题的出现,提高wordpress效率。

语法:

wp_enqueue_script( $handle, $src, $deps, $ver, $in_footer );

参数:

$handle:(必需)脚本名称。小写字符串。默认值:None
$src:(可选)WordPress网站根目录下的JS路径。如:"/wp-includes/js/xxx.js"。默认值:None
$deps:(可选)依赖关系数组;加载该脚本前需要加载的其它脚本。默认值:array()
$ver:(可选)指明脚本版本号的字符串(若存在版本号)。默认为false。
$in_footer:(可选)默认值:false,放置在区块中。为true时,会出现在区最下方,但必须有wp_footer()钩子。

示例

示例1:加载scriptaculous脚本

function my_init_method() {

wp_enqueue_script('scriptaculous');

}
add_action('init', my_init_method);

示例2、根据scriptaculous加载脚本

添加并加载一个依赖于scriptaculous的脚本(这将使scriptaculous也被加载入页面):

wp_enqueue_script(

'newscript',
WP_PLUGIN_URL . '/someplugin/js/newscript.js',
array('scriptaculous'),
'1.0'

);

示例3、只在插件页面加载脚本

add_action('admin_menu', 'my_plugin_admin_menu');
function my_plugin_admin_init(){

wp_register_script('myPluginScript', WP_PLUGIN_URL . '/myPlugin/script.js');

}

function my_plugin_admin_menu(){

$page = add_submenu_page( 'edit.php',
__('My Plugin', 'myPlugin'),
__('My Plugin', 'myPlugin'), 9, __FILE__,
'my_plugin_manage_menu');

add_action('admin_print_scripts-' . $page, 'my_plugin_admin_styles');

}

function my_plugin_admin_styles(){

wp_enqueue_script('myPluginScript');

}

function my_plugin_manage_menu(){ }

注意事项:

1、如果使用wp_head勾子来添加动作,wp_enqueue_script函数将失效,因为在wp_head运行前,标签就已经输出了。可以使用的动作勾子: init(初始化)、template_redirect (公共页面)、admin_print_scripts (管理页面)。</p>

2、$handle,是必填项,必须填写;注意每一个的命名是唯一的,不能取一样的名字。