2015-04-21 24 views
0

我正在寫一個插件,使用'admin_enqueue_scripts'加載CSS和JS文件。WordPress的,admin_enqueue_scripts不加載所有文件頭

我使用完全相同的方法來加載css和js ..但只有css被加載到頭部,js文件被加載到了頁腳?

想不明白爲什麼?

在該示例中的WP抄本(https://codex.wordpress.org/Plugin_API/Action_Reference/admin_enqueue_scripts)中明確規定: 「在這個例子中,我們載入中edit.php的部分JavaScript文件。」

這裏是我的代碼:

// add scripts and styles only available in admin 
    add_action('admin_enqueue_scripts', array($this, 'eman_add_admin_JS')); 
    add_action('admin_enqueue_scripts', array($this, 'eman_add_admin_CSS')); 

public function eman_add_admin_CSS() { 
    if(is_admin() && $_GET['page'] == 'enjoyit-management' || $_GET['page'] == 'management-settings'){    
     wp_register_style('eman-style-admin', plugins_url('/css/eman-style-admin.css', __FILE__), array(), '1.0', 'all'); 
     wp_enqueue_style('eman-style-admin');   
    } 
} 

public function eman_add_admin_JS() { 
    if(is_admin() && $_GET['page'] == 'enjoyit-management' || $_GET['page'] == 'management-settings'){  
     // Load jQuery, just to be sure.   
     wp_enqueue_script('jquery'); 
     wp_register_script('eman-script-admin', plugins_url('/js/eman-script-admin.js' , __FILE__), array('jquery'), '1.0', true); 
     wp_enqueue_script('eman-script-admin'); 
    } 
} 

回答

0

只有當你在enqeue把真或register_script它會在頭加載。

jquery和javascript的'最好'的地方是加載在頁​​腳。因爲它不會在您的網站上造成滯後。

但是如果你想它的頭,你應該使用

wp_register_script('my-script', plugins_url('my-script.js' , __FILE__), array('jquery'), '1.0', false); 
wp_enqueue_script('my-script'); 
+0

感謝Danny爲您的快速重播(該死的...)。它必須是假的,當你想把它加載到頭部時,我會將你的答案標記爲正確的答案。 – Bjorn

+0

請編輯您的答案,在register_script行中將'true'更改爲'false'。 - 編輯 - 謝謝,我必須等5分鐘,然後才能接受答案。 – Bjorn

0

OMG,對不起,張貼後,我讀到「wp_register_script」的抄本,它就在那裏了。最後一個參數是'$ in_footer'布爾值,它被設置爲true ... aargh ..