我正在使用ticker jQuery插件,无法正确加载脚本文件。如果我将脚本直接添加到主题的header.php
文件我的脚本工作正常
示例:
<script src="<?php bloginfo(\'template_directory\'); ?>/js/jquery-ticker.js"></script>
<script src="<?php bloginfo(\'template_directory\'); ?>/js/site.js"></script>
如果我试图从WordPress插件加载脚本,我会收到一个错误。插件代码:
function bbc_frontend_script() {
wp_enqueue_script(\'jquery\');
wp_enqueue_script(\'ticker\', plugins_url("/js/jquery-ticker.js", __FILE__));
wp_enqueue_script(\'js\', plugins_url("/js/site.js", __FILE__));
}
add_action( \'wp_enqueue_scripts\', \'bbc_frontend_script\' );
我收到的错误是控制台输出
site.js
Uncaught Reference error:Jquery is not defined .
你能帮我理解为什么从WordPress插件加载脚本时出现控制台错误吗?
SO网友:Rachel Baker
添加jquery
脚本作为jquery-ticker.js
和site.js
中的文件wp_enqueue_script
作用
示例:
function bbc_frontend_script() {
wp_enqueue_script(\'ticker\', plugins_url("/js/jquery-ticker.js", __FILE__), array( \'jquery\' ) );
wp_enqueue_script(\'sitejs\', plugins_url("/js/site.js", __FILE__), array( \'jquery\', \'ticker\' ) );
}
add_action( \'wp_enqueue_scripts\', \'bbc_frontend_script\' );
你也不必排队
jquery
如果将其定义为依赖项,则将其单独设置。
Edited:添加缺少)
在排队语句的末尾。
SO网友:Gareth Gillman
您需要注册脚本,但也需要将它们定义到jQuery库中,例如。
wp_register_script(\'ticker\', plugins_url("/js/jquery-ticker.js", array(\'jquery\'), \'1.3\', true );
wp_enqueue_script(\'ticker\');
数组在jQuery加载后注册它,真正的方法是将其设置为在wp\\u footer而不是wp\\u head中注册