我在WordPress中遇到了一個關於wp_enqueue_script()
的奇怪事情,我想要發生的是通過在functions.php中添加一個動作鉤子來在頁面上添加一個腳本,但是當我這樣做時,不要再增加腳本的頁面上,但是當我把代碼作爲一個插件現在增加了腳本的頁面上WordPress WP入隊腳本問題
注:在functions.php的,當我在頁腳添加腳本:add_action('wp_footer','function_name');
它工作正常,但當我將它添加到wp_head和init時,它不會在我將代碼放在functions.php
上時添加腳本,但是當我將它作爲插件來使用時,即使將它添加到wp_head和init上,它也可以正常工作
我需要添加腳本INIT或WP_HEAD,但它不工作的時候,我把該代碼的functions.php我需要的腳本中部分的主題不是一個插件
//functions.php
add_action('init', 'function_name');
function function_name(){
wp_enqueue_script('script_holder', get_template_directory_uri() . '/script.js');
}
//as a plugin
add_action('init', 'function_name');
function function_name() {
$plugin_location=WP_PLUGIN_URL.'/'.str_replace(basename(__FILE__),"",plugin_basename(__FILE__));
if(!is_admin()){
wp_enqueue_script('script_holder', $plugin_location . '/script.js');
}
}
我知道它應該工作,即使在functions.php的,但我真的不知道爲什麼會出現這種情況 誰能幫我解釋一下我爲什麼會出現這種情況嗎?
非常感謝你
基本上這是我在做什麼:
add_action('init', 'override_jquery');
function override_jquery() {
if(!is_admin()){
wp_deregister_script('jquery');
wp_enqueue_script('nashgraphics_jquery_library', get_template_directory_uri() . '/bootstrap/js/jquery-1.9.0.min.js');
}
}
感謝您的答覆,是的,我知道,但我真的需要回答我的問題,因爲我關心的是爲什麼它是否包括腳本,當我把代碼作爲一個插件,並且不包括腳本時,我把它放在函數上。php – 2013-04-29 04:36:07
'init'在加載所有插件後觸發。你可以嘗試掛接到'plugins_loaded':http://codex.wordpress.org/Plugin_API/Action_Reference/plugins_loaded – diggy 2013-04-29 11:43:44
也沒工作,請仔細閱讀上面的編輯,讓你知道究竟是什麼,我試圖做的。謝謝 – 2013-04-30 02:57:32