2011-01-22 37 views
0

我在我的主題使用jQuery工作,從谷歌的CDN網絡加載它,在我functions.php文件調用它是這樣的:WordPress的:谷歌加載jQuery的不可溼性粉劑管理員

function bb_google_jquery() { 
    wp_deregister_script('jquery'); 
    wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js', false, '1.4.4'); 
    wp_enqueue_script('jquery'); 
} 

if(!is_admin()){ 
    add_action('init', 'bb_google_jquery'); 
} 

問題是,即使它被包裝在條件標記中,它也會停止wp-admin jQuery的內容,例如側欄菜單下拉菜單和儀表板下拉菜單。刪除is_admin使其正常工作。

但是,我需要將它包裹在條件標記中,否則我無法移動菜單項。

任何我在做錯了這段代碼?

+0

你能更清楚地描述頁面上的JS文件你想要完成什麼?你想爲管理員和非管理員或只有一個這個拖放功能嗎?如果只有一個,請清楚說明哪一個。謝謝。 – jmort253 2011-01-22 18:00:09

回答

0

這聽起來像你想要這個功能作爲管理員,但你的條件說,只有當會議不是管理員會話加載它。也許刪除!有助於?

if(is_admin()) { 

它在代碼中設置的方式表示「僅爲所有非管理員加載JQuery」。

+0

是的,我所提到的 - 如果我刪除條件標記(即if is_admin)並允許它加載到管理區域,它將停止其他jQuerty的東西(即移動菜單項)工作。惡性循環在這裏! – Justine 2011-01-22 17:51:38

+0

@Justine - 你的意思是爲管理員,非管理員或只是一個加載JQuery(拖放)?我現在感到困惑。 – jmort253 2011-01-22 18:02:09

0

這應該工作,我想

function bb_google_jquery() { 
    wp_deregister_script('jquery'); 
    wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js', false, '1.4.4'); 
    wp_enqueue_script('jquery'); 
} 

if(is_admin()){ 
    add_action('admin_enqueue_scripts', 'bb_google_jquery'); 
} 

更好只包括在你需要它

function my_enqueue($hook) { 
    if('edit.php' != $hook) 
     return; 
    wp_enqueue_script('my_custom_script', plugins_url('/myscript.js', __FILE__)); 
} 
add_action('admin_enqueue_scripts', 'my_enqueue'); 

檢查wordpress codex

相關問題