要做到这一点,最简单的方法实际上是wp_enqueue_script
以及Saif和v0idless已经引用的页脚操作。我经常在主题和插件中使用jQuery,但我也将所有其他脚本都放在页脚中。
实际排队的最佳方式是:
function myscript() {
?>
<script type="text/javascript">
if ( undefined !== window.jQuery ) {
// script dependent on jQuery
}
</script>
<?php
}
add_action( \'wp_footer\', \'myscript\' );
function myscript_jquery() {
wp_enqueue_script( \'jquery\' );
}
add_action( \'wp_head\' , \'myscript_jquery\' );
但是,这段被剪断的代码假设您是脚本的排队者,也就是说,您在自己的插件或主题中执行此操作。
目前,无法将内嵌脚本添加到WordPress页脚,也无法加载依赖项。但如果你愿意,还有一个选择。
另一种选择是,当WordPress使用脚本时,它会在内部将脚本加载到对象中,以跟踪它们。对象内基本上有3个列表:
当您第一次使用wp_register_scripts()
它被放在注册列表中。当你wp_enqueue_script()
脚本,它将复制到队列列表。打印到页面后,它将添加到完成列表中。
因此,您不需要将页脚脚本排队以要求jQuery,而可以记录它需要使用jQuery,并通过编程进行检查以确保jQuery已加载。
这使用wp_script_is()
检查脚本的列出位置。
function myscript() {
if( wp_script_is( \'jquery\', \'done\' ) ) {
?>
<script type="text/javascript">
// script dependent on jQuery
</script>
<?php
}
}
add_action( \'wp_footer\', \'myscript\' );
您可以使用相同的代码强制jQuery加载到页脚中,但我还没有测试过这一点。。。所以你的里程数会有所不同。