2013-10-07 55 views
2

我已經創建了WordPress的一個插件在WordPress管理窗口小部件的JavaScript文件。小部件的形式有一些輸入框。現在,我想添加它使用JavaScript文件,我從http://jscolor.com/我怎樣包括

下載現在的問題是,它不工作的自定義輸入框。我已經在WP_Widget類的窗體函數中註冊了這樣的JavaScript文件。

require_once('index.php'); 
add_action('admin_enqueue_scripts', 'pw_load_scripts'); 

的pw_load_scripts功能的index.php中

function pw_load_scripts() { 
    wp_register_script('custom-js', plugin_dir_url(__FILE__).'scripts/jscolor.js'); 
    wp_enqueue_script('custom-js'); 
} 

畢竟這些,它不工作。什麼是做這個任務的正確方法?

我的error.log中有此錯誤

[Mon Oct 07 21:37:30.591896 2013] [:error] [pid 14853] [client 127.0.0.1:42453] PHP Fatal error: Cannot redeclare _wp_menu_output() (previously declared in /var/www/wordpress/wp-admin/menu-header.php:36) in /var/www/wordpress/wp-admin/menu-header.php on line 36 

謝謝

+0

什麼是PHP錯誤日誌中說,或者你看到了什麼其他可見的錯誤? – manishie

+0

在widgets.php中,只有窗口部件可以看到上方和左邊的部件。其他人無法看到。 – Rishi

+0

PHP錯誤日誌說什麼,也是Javascript控制檯。請檢查兩者並確保沒有錯誤。 – manishie

回答

1

正確 admin_print_scripts入隊的風格腳本。

注意admin_footeradmin_head也接受同樣的屏幕定位'actionname-$hook'

add_action('admin_print_scripts-widgets.php', 'admin_enqueue_so_19228543'); 

function admin_enqueue_so_19228543() 
{ 
    wp_enqueue_script( 
      'my-script', 
      plugins_url('/my-script.js', __FILE__), 
      array(), // dependencies 
      false, // version 
      true // on footer 
    ); 
    wp_enqueue_style( 
     'my-style', plugins_url('/my-style.css', __FILE__) 
    ); 

} 

的食品法典委員會說,否則,但是我敢肯定這是一個官方立場。我正在研究並將回報。


更新

我無法找到任何admin_print_scripts參考是正確的鉤,雖然它的工作原理和我見過用這種方式多次。爲了完整,這是多麼admin_enqueue_scripts作品:

add_action('admin_enqueue_scripts', 'admin_enqueue_so_19228543'); 

function admin_enqueue_so_19228543($hook) 
{ 
    if('widgets.php' != $hook) 
     return; 

    wp_enqueue_script( 
      'my-script', 
      plugins_url('/my-script.js', __FILE__), 
      array(), // dependencies 
      false, // version 
      true // on footer 
    ); 
    wp_enqueue_style( 
     'my-style', plugins_url('/my-style.css', __FILE__) 
    ); 

} 

相關:Difference between do_action('admin_enqueue_scripts', $hook_suffix) and do_action(「admin_print_styles-$hook_suffix」) syntax

1

嘗試刪除:

require_once('index.php'); 

我不知道你來自哪裏得到這個。它似乎試圖重新加載WordPress的index.php文件。

+0

嗨,謝謝,錯誤被刪除。但是,顏色選擇器仍然不起作用。這只是一個普通的輸入框。 – Rishi

+0

您的輸入元素是否如下所示: manishie

相關問題