Перевірте, чи скрипт / стиль було ввімкнено / зареєстровано


31

Чи можливо перевірити, чи був зареєстрований сценарій чи стиль за допомогою wp_register_script/_styleабо wp_enqueue_script/_style? Усі функції не повертають значення, і я абсолютно незрозумілий.

Мені потрібно, щоб перемикатися між різними функціями залежно від бібліотек стилів та скриптів, які я пропоную.

Дякую!

Відповіді:


49

Існує функція, що називається wp_script_is( $handle, $list ). $listможе бути одним із:

  • 'зареєстровано' - було зареєстровано через wp_register_script()
  • 'черга' - була заведена наскрізь wp_enqueue_script()
  • 'зроблено' - було надруковано
  • 'to_do' - буде надруковано

Дітто все, що для wp_style_is().


11

Перевірте $GLOBALS['wp_scripts']->registeredсценарії.

Приклад

function is_enqueued_script( $script )
{
    return isset( $GLOBALS['wp_scripts']->registered[ $script ] );
}

print (int) is_enqueued_script( 'l10n' );

$GLOBALS['wp_styles']->registered працює так само.


1
Даун проголосував це через відсутність перевірки обґрунтованості, залишає можливість фатальних помилок.
Backie

2
@Backie, але ти розумієш, що це доказ концепції?
fuxia

wp_script_is () - краще і безпечніше рішення (Adam Backstrom`)
chrisjlee
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.