WordPress不会在模板(前端)中自动将jQuery排队。主题必须这样做。
将jQuery排入模板队列的正确方法是将回调添加到wp_enqueue_scripts
, 像这样:
function wpse116473_enqueue_scripts() {
if ( ! is_admin() ) {
wp_enqueue_script( \'jquery\' );
}
}
add_action( \'wp_enqueue_scripts\', \'wpse116473_enqueue_scripts\' );
自
wp_enqueue_scripts
通过
wp_head
操作,该操作由
wp_head()
模板标记(通常在
header.php
), 回调将在模板中的所有上下文中执行。例如,如果只想将脚本排入特定页面模板中的队列,则有两个选项:
在上述回调中使用条件包装,例如:
function wpse116473_enqueue_scripts() {
if ( ! is_admin() ) {
if ( \'template-foobar.php\' == get_page_template() ) {
wp_enqueue_script( \'jquery\' );
}
}
}
add_action( \'wp_enqueue_scripts\', \'wpse116473_enqueue_scripts\' );
打电话就可以了
wp_enqueue_script()
直接在模板中,在输出脚本之前,例如:
wp_enqueue_script( \'jquery\' );
<script type="text/javascript">
jQuery(document).ready(function($) {
alert("Hello world!");
});
</script>
自WordPress 3.4(IIRC)以来,脚本可以内联排队,这使得定位它们所排队的上下文更加容易。(这是一种很好的方法,例如,滑块模板零件文件。)