在开发Wordpress + BuddyPress子主题期间,我遇到了脚本问题。 我想将它们移动到BODY页脚(Modernizr除外),但是一些BuddyPress脚本保持在顶部。我做到了:
// remove unused head entries
remove_action('wp_head', 'rsd_link');
//...
remove_action('wp_head', 'adjacent_posts_rel_link');
// move sctipts to footer
remove_action('wp_head', 'wp_print_scripts');
remove_action('wp_head', 'wp_print_head_scripts');
remove_action('wp_head', 'wp_enqueue_scripts');
remove_action('wp_head', 'bp_core_confirmation_js');
remove_action('wp_head', 'bp_core_add_ajax_url_js');
add_action('wp_head', 'wp_head_scripts', 9);
add_action('wp_footer', 'wp_enqueue_scripts', 20);
add_action('wp_footer', 'bp_core_confirmation_js', 21);
add_action('wp_footer', 'bp_core_add_ajax_url_js', 22);
我对动作指令感到困惑,看起来并不漂亮。
是否可以让它更漂亮(更自动)?我在想这样一个数组:
$head_scripts = array(
'modernizr' => 'libs/modernizr-2.6.1.js',
);
$footer_scripts = array(
'jquery' => 'libs/jquery-1.8.2.js',
'jquery.mansonry' => 'libs/jquery.masonry.min.js',
'fb_api' => 'libs/fb_api.js',
'scripts' => 'script.js'
);
和一个函数(动作),它首先在页眉中添加,另一个在页脚和下一个admin_bar中添加,如果需要,可以添加。(
答案 0 :(得分:0)
为什么不跟踪所有脚本wp_enqueue_script
文件并将in_footer参数更改为true。您可能知道wp_enqueue_script方法具有最后一个参数,您可以指示该脚本是否将放入页脚。默认值为false,将放入标题
wp_enqueue_script(
$handle
,$src
,$deps
,$ver
,$in_footer // make this TRUE to put the script in the footer
);
有关详细信息,请访问文档http://codex.wordpress.org/Function_Reference/wp_enqueue_script