wp_enqueue_script('jquery-ui-datepicker');
wp_enqueue_script('jquery-ui-dialog');
wp_enqueue_script('jquery-form');
К сожалению, не помогло.
Вот код в functions.php:
function print_single() {
wp_enqueue_script('jquery-ui-datepicker');
wp_enqueue_script('jquery-ui-dialog');
wp_enqueue_script('jquery-form');
}
if( is_single() ) add_action('wp_print_scripts', 'print_single');
Вот код, запускающий дэйтпикер:
jQuery(document).ready(function(){
jQuery('label.dateselector').click(function(){
jQuery('.dateselector input').datepicker();
});
});
Впрочем, врядли проблема в этом коде, потому что ни одного из вышеупомянутых скриптов нет в списке ресурсов загруженной страницы. Страницы здесь.
Может нужно зависимости указать?
(если, зайдя на страницу и посмтрев ресурсы/код, вы увидите подключённый jquery form, то это только потому, что я его в <header></header> захардкодил. А хотелось бы правильно.)
А, ну конечно. Не туда вставляете проверку is_single():
function print_single() {
if( is_single() ) {
wp_enqueue_script('jquery-ui-datepicker');
wp_enqueue_script('jquery-ui-dialog');
wp_enqueue_script('jquery-form');
}
}
add_action('wp_print_scripts', 'print_single');
Докуметация
Note: This function will not work if it is called from a wp_head or wp_print_scripts actions, as the files need to be enqueued before those actions are run. See the Usage section for the correct hooks to use.
Кратко: Хук срабатывает позже, чем надо. Попробуйте так
add_action('wp_enqueue_scripts', 'print_single');
О, а какой хук ловится, я даже и не заметил 🙂
Спасибо, mkramer, заработало.