Відповіді:
$wp_scripts
глобальна зберігає всі дані сценарію:
function wpa54064_inspect_scripts() {
global $wp_scripts;
foreach( $wp_scripts->queue as $handle ) :
echo $handle;
endforeach;
}
add_action( 'wp_print_scripts', 'wpa54064_inspect_scripts' );
,9999
як add_action( 'wp_print_scripts', wpa54064_inspect_scripts', 9999 );
, інакше ви побачите сценарії, відмінені файлом function.php
Чи є спосіб отримати ручку $ для кожного скрипту, який було додано?
Ви можете спробувати перевірити $wp_scripts->queue
конкретний гачок, але він не надасть вам список усіх ручок, якими користується WordPress, вірите чи ні.
Наприклад, ви можете зачепитись wp_head
, яка виконує wp_print_scripts
дію, щоб отримати список $handles
акцій Twenty Seventeen тема в WP v4.7.5:
function get_enqueued_scripts () {
$scripts = wp_scripts();
var_dump( array_keys( $scripts->groups ) );
}
add_action( 'wp_head', 'get_enqueued_scripts' );
І список $handles
з $wp_scripts->groups
буде виводити:
У цей момент, якщо ви порівнювали те, що існує у $wp_scripts->queue
вас, ви побачите лише підмножину вищезазначеного.
Тому навіть wp_print_scripts
не надаватиметься повний перелік ручок, як показано вище, якщо ви це вже хочете. І не завжди можна покластися на згруповані залежності, щоб їх отримати.
$wp_scripts = wp_scripts();
може бути кращим, ніж отримати доступ до глобальної мережі безпосередньо, оскільки вона буде ініціалізована,$wp_scripts
якщо вона не була встановлена.