将多个js文件包含到wordpress主题中的最佳方法是什么?

时间:2011-08-15 13:19:42

标签: wordpress wordpress-theming

我正在尝试将新的js文件添加到我新创建的主题中(我是wordpress主题的新手) 我试图这样做:

function includejQuery() {
    if (!is_admin()) {
        wp_deregister_script('jquery');
        $jqueryPath = get_bloginfo('template_directory') . '/js/jquery-1.6.2.min.js';
        wp_register_script('jquery', $jqueryPath);
        wp_enqueue_script('jquery');
   }
}
function includeddAccordionUI() {
    if (!is_admin()) {
        wp_deregister_script('ddaccordion');
         $ddaccordionPath = get_bloginfo('template_directory') . '/js/ddaccordionUI.js';
          wp_register_script('ddaccordion', $ddaccordionPath , array("jquery"));
          wp_enqueue_script('ddaccordion'); 
    }
}

add_action('init', 'includejQuery');
add_action('init', 'includeddAccordionUI');

上面提到的想法工作得很好,包含一个文件,但如果你包含2个文件php将进入无限循环(或页面不会停止加载)

有没有更好的方法来包含许多js文件?

1 个答案:

答案 0 :(得分:1)

将脚本前端排队时使用操作wp_enqueue_scripts。这样您就不必检查自己是否在管理员中。当您确实要在管理员中加载时,请使用admin_enqueue_scripts。这不仅是为了摆脱你的错误,也是为了摆脱条件。也只使用一个函数并从该函数加载所有js,以防止可能的代码重复(例如当前的条件)。现在,如果这不起作用,它与Wordpress无关,可能是由于js。最后一个建议是使用包含的js文件,通常就足够了!

wp_enqueue_script的代码页:http://codex.wordpress.org/Function_Reference/wp_enqueue_script