Как загрузить сценарии по умолчанию, включенные WordPress правильно?

Я хочу знать корректный способ загрузить существующие сценарии в wp-includes/js/jquery/

Пример я хочу загрузиться jQuery UI Tabs

Что я сделал на данный момент

function sample_exists_code() {
   echo '<script type="text/javascript" src="'. CONSTANTS_JS .'/jquery.js"></script>'."\n"; 
   echo '<script type="text/javascript" src="'. CONSTANTS_JS .'/jquery-ui.js"></script>'."\n"; 
}    
add_action('admin_head', 'sample_exists_code');

и этот код, хорошо работающий для загрузки вкладки UI.

Но когда я пробую, используют этот код, и он не работает

function sample_exists_code() {
    wp_enqueue_script('jquery');   
    wp_enqueue_script('jquery-ui-tabs');            
}    
add_action('admin_head', 'sample_exists_code');

Сообщите мне корректный способ назвать существующие сценарии.


Обновление:

// load existings js and template css.
function sample_admin_js_head()
{
    wp_enqueue_script('jquery-ui-tabs', null, array('jquery-ui-core','jquery'), null, false);
    echo '<link rel="stylesheet" type="text/css" href="' . CONSTANTS_STYLES . '/style.css" />' . "\n";
}

// load up the menu page
function sample_add_page()
{
    $optionpage = add_theme_page(__('Theme Options'), __('Theme Options'), 'edit_theme_options', 'sample', 'sample_do_template');
    add_action( "admin_print_scripts-$optionpage", 'sample_admin_js_head' );
}

add_action('admin_menu', 'sample_add_page');
1
30.01.2011, 00:05
3 ответа

Привет @haha:

'admin_init' определенно an\осуществимый способ загрузить сценарии, но Вы могли бы также хотеть смотреть на это сообщение в блоге и рассмотреть использование "admin_print_scripts-{$page}" сцепитесь вместо этого, который может позволить Вам только загружаться на Вашей странице, когда Вы нуждаетесь в ней и не обременяете другие администраторские страницы:

Вот код от сообщения в блоге, хотя изменено немного:

$your_page = add_management_page('myplugin','myplugin',9,__FILE__,
               'yourplugin_admin_page');
add_action("admin_print_scripts-{$your_page}",'yourplugin_jquery_tabs_loader'); 
function yourplugin_jquery_tabs_loader() {
  // what your plugin needs in its <head>
}
1
19.02.2020, 22:50
  • 1
    @haha - Довольный я мог помочь. –  MikeSchinkel 29.01.2011, 23:52

Документы кодекса о wp_enqueue_script() настоятельно рекомендуйте только сцепить его с init. Примеры также показывают использование admin_init для администраторской области, но я не совсем уверен, что это рекомендуется.

1
19.02.2020, 22:50

Получил его, работал :)

function sample_exists_code() {
wp_enqueue_script('jquery-ui-tabs', null, array('jquery-ui-core', 'jquery'), null, false);     
}    
add_action('admin_init', 'sample_exists_code');
1
19.02.2020, 22:50

Теги

Похожие вопросы