wp_script_is()
Определяет был ли файл скрипта зарегистрирован / добавлен в очередь на вывод / выведен на экран.
Функция может пригодится при написании плагина, когда нужно проверить было ли произведено указанное действие над указанным скриптом. Она поможет избежать конфликтов с подключением одинаковых скриптов в разных плагинах.
wp_style_is() — Такая же проверка для файла стилей.
Хуков нет.
Возвращает
true|false
. true/false, в зависимости от того выполняется условие или нет.
Использование
wp_script_is( $handle, $list );
- $handle(строка) (обязательный)
- Идентификатор (название) проверяемого скрипта. В нижнем регистре.
- $list(строка)
Какого рода проверку проводить. Допускаются следующие значения:
registered
— скрипт был зарегистрирован через функцию wp_register_script();enqueued
илиqueue
— скрипт был добавлен в очередь на вывод;done
— скрипт уже обработан (был выведен на экран);to_do
— скрипт еще не был обработан (ожидает вывода на экран).
По умолчанию: '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' added as an alias of the 'queue' list. |
Код wp_script_is() wp script is WP 6.4.3
function wp_script_is( $handle, $status = 'enqueued' ) { _wp_scripts_maybe_doing_it_wrong( __FUNCTION__, $handle ); return (bool) wp_scripts()->query( $handle, $status ); }