wp_script_is()WP 2.8.0

Определяет был ли файл скрипта зарегистрирован / добавлен в очередь на вывод / выведен на экран.

Функция может пригодится при написании плагина, когда нужно проверить было ли произведено указанное действие над указанным скриптом. Она поможет избежать конфликтов с подключением одинаковых скриптов в разных плагинах.

wp_style_is() — Такая же проверка для файла стилей.

1 раз — 0.000026 сек (очень быстро) | 50000 раз — 0.09 сек (скорость света) | PHP 7.0.5, WP 4.5.2

Хуков нет.

Возвращает

true|false. true/false, в зависимости от того выполняется условие или нет.

Использование

wp_script_is( $handle, $list );
$handle(строка) (обязательный)
Идентификатор (название) проверяемого скрипта. В нижнем регистре.
$list(строка)

Какого рода проверку проводить. Допускаются следующие значения:

  • registered — скрипт был зарегистрирован через функцию wp_register_script();
  • enqueued или queue — скрипт был добавлен в очередь на вывод;
  • done — скрипт уже обработан (был выведен на экран);
  • to_do — скрипт еще не был обработан (ожидает вывода на экран).

По умолчанию: 'enqueued'

Примеры

0

#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 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 );
}