Відповіді:
$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якщо вона не була встановлена.