这是添加Java脚本文件的最有效方式吗?

时间:2012-06-03 作者:eightbitdino

我目前正在将HTML模板重写为Wordpress主题。它有很多代码依赖性,我想知道这是否是添加它的正确、最有效的方法。此代码列在“我的函数”中。php文件。

//Load Javascript
if (!is_admin()) add_action("wp_enqueue_scripts", "my_scripts");

function my_scripts() {
    wp_register_script(\'easytabs\', get_template_directory_uri() . \'/js/jquery.easytabs.min.js\', array(\'jquery\'), null, true);
    wp_register_script(\'respond\', get_template_directory_uri() . \'/js/respond.min.js\', false, null, true);
    wp_register_script(\'adipoli\', get_template_directory_uri() . \'/js/jquery.adipoli.min.js\', array(\'jquery\'), null, true);
    wp_register_script(\'fancybox\', get_template_directory_uri() . \'/js/jquery.fancybox-1.3.4.pack.js\', array(\'jquery\'), null, true);
    wp_register_script(\'isotope\', get_template_directory_uri() . \'/js/jquery.isotope.min.js\', array(\'jquery\'), null, true);
    wp_register_script(\'gmaps_google\', "http" . ($_SERVER[\'SERVER_PORT\'] == 443 ? "s" : "") . "://maps.google.com/maps/api/js?sensor=false", false, null, true);
    wp_register_script(\'gmap\', get_template_directory_uri() . \'/js/jquery.gmap.min.js\', array(\'gmaps_google\'), null, true);
    wp_register_script(\'custom\', get_template_directory_uri() . \'/js/custom.js\', array(\'gmap\'), null, true);

    wp_enqueue_script(\'jquery\');
    wp_enqueue_script(\'easytabs\');
    wp_enqueue_script(\'respond\');
    wp_enqueue_script(\'adipoli\');
    wp_enqueue_script(\'fancybox\');
    wp_enqueue_script(\'isotope\');
    wp_enqueue_script(\'gmaps_google\');
    wp_enqueue_script(\'gmap\');
    wp_enqueue_script(\'custom\');
}

1 个回复
SO网友:Stephen Harris

这是加载脚本的正确方法。它是否有效将取决于您实际何时需要加载脚本。目前,它将加载到每个前端页面。如果没有必要,您应该放置一些条件并调用wp_enqueue_scripts 实际需要文件时。

此外,如果您正在加载脚本,则不必手动将其依赖项排队(需要加载才能工作的其他脚本)。比如说wp_enqueue_script(\'custom\'); 将自动加载“gmaps\\u google”和“gmap”,因此您无需告诉WordPress加载它们。

如果您只是注册,那么立即将脚本排队,您可以通过在中提供脚本的位置(以及依赖项等)来整理代码wp_enqueue_scripts 并且没有注册它们。然而,通常最好注册脚本,然后根据上下文,仅在需要时(例如,在短代码或小部件回调中)将其排队。

最后wp_enqueue_scripts 仅在前端点火,因此!is_admin 检查是多余的。

结束

相关推荐