Answers:
在$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 );
,否则您将看到由functions.php文件出队的脚本
有没有办法为已排队的每个脚本获取$ handle?
您可以尝试$wp_scripts->queue
在特定的钩子处进行检查,但无论您是否相信,它都不会为您提供WordPress使用的所有句柄的列表。
例如,您可以转到wp_head
运行该wp_print_scripts
操作的,以获取$handles
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
from 的列表$wp_scripts->groups
将输出:
此时,如果要比较存在的内容,$wp_scripts->queue
则只会看到上述内容的一部分。
因此,即使您要的是,Even wp_print_scripts
也不会提供上述处理的完整列表。而且不可能总是依靠分组的依赖关系来获取它们。
$wp_scripts = wp_scripts();
可能比直接访问全局更好,因为$wp_scripts
如果尚未设置,它将初始化。