WP_SCRIPT_IS() │ WP 2.8.0
Функция для проверки подключенности скрипта к очереди.
Описание функции
Функция wp_script_is() позволяет узнать, был ли определённый скрипт добавлен в очередь для подключения. Это полезно для оптимизации работы с JavaScript в ваших темах и плагинах.
Производительность
- 1 раз — 0.000026 сек (очень быстро)
- 50000 раз — 0.09 сек (для сравнения)
Версия PHP: 7.0.5, WordPress: 4.5.2
Возвращаемое значение
Функция возвращает true или false в зависимости от того, находится ли скрипт в очереди.
Использование
wp_script_is( $handle, $status );
Аргументы
$handle(строка) — название скрипта, который вы хотите проверить. Этот параметр обязательно указывать.$status(строка) — статус скрипта, который нужно проверить. Возможные значения:'enqueued'— в очереди на подключение'registered'— зарегистрирован, но не в очереди'queue'— в очереди'to_do'— требует подключения'done'— был подключён- По умолчанию используется значение
'enqueued'.
Примеры
Пример 1: Проверка и подключение скрипта
В этом примере показано, как подключить скрипт /js/fluidvids.min.js, предварительно проверив, добавлен ли он уже в очередь.
Если скрипт уже подключён, код ничего не делает. Если нет, он будет подключён и добавлен в очередь для обработки:
if ( ! wp_script_is( 'fluid_vids', 'enqueued' ) ) {
wp_register_script( 'fluid_vids', plugin_dir_url(__FILE__).'js/fluidvids.min.js' );
wp_enqueue_script( 'fluid_vids' );
}
История изменений
- С версии 2.8.0 — функция была введена.
- С версии 3.5.0 — добавлено значение
'enqueued'как синоним для'queue'.
Код функции
function wp_script_is( $handle, $status = 'enqueued' ) {
_wp_scripts_maybe_doing_it_wrong( __FUNCTION__, $handle );
return (bool) wp_scripts()->query( $handle, $status );
}
Связанные функции
wp_add_inline_script()wp_dequeue_script()wp_deregister_script()wp_enqueue_media()wp_enqueue_script()wp_localize_script()wp_register_script()wp_script_add_data()
Условия (Conditional Tags)
WordPress предоставляет множество функций, которые позволяют проверять различные состояния и параметры. Вот некоторые из них:
is_admin()— проверяет, находитесь ли вы в админке.is_home()— проверяет, находитесь ли вы на главной странице.is_single()— проверяет, отображается ли конкретный пост.is_page()— проверяет, отображается ли конкретная страница.
Эти функции могут быть полезны для создания динамических условий при подключении скриптов и стилей.
Теперь вы знаете, как использовать функцию wp_script_is() для работы с JavaScript в WordPress!