我无法在自定义Wordpress主题中成功加载jQuery

时间:2013-12-03 15:41:38

标签: javascript jquery wordpress wordpress-theming

难道不敢相信这么多年后我再次偶然发现了这个问题。我们开发了一个需要jQuery的自定义Wordpress主题(联系人表单7需要它,将其视为jQuery和我自己的自定义代码,将其视为$)。我可以在任何地方找到相互矛盾的代码示例,有人说jQuery是包含在内的,你可以简单地将它排队,其他人你需要一个完整的函数来保存所有的脚本等。

到目前为止测试的代码不起作用:(输出$未定义且jQuery未定义)

代码示例1:

wp_enqueue_script( 'jquery' ); (does not work, get above error, in header.php)

代码示例2:

function loadScripts() {
    wp_enqueue_script( 'jquery' );
wp_register_script('jqueryCycle',get_template_directory_uri().'/js/jquery.cycle.js', 'jquery');
    wp_enqueue_script( 'jqueryCycle' );                 
    wp_register_script('javascript', get_template_directory_uri().'/js/javascript.js', 'jquery');
    wp_enqueue_script( 'javascript' );
wp_register_script('jqueryCookie', get_template_directory_uri().'/js/jquery.cookie.js', 'jquery');
    wp_enqueue_script( 'jqueryCookie' );
    wp_register_script('jqueryCookiecuttr', get_template_directory_uri().'/js/jquery.cookiecuttr.js', 'jquery' );
    wp_enqueue_script( 'jqueryCookiecuttr' );
}

add_action( 'wp_enqueue_scripts', 'loadScripts' );  (code i got from older theme, same errors)

代码示例3:

function td_load_js() {
    wp_enqueue_script( 'jquery' );
    wp_enqueue_script( 'javascript', get_template_directory_uri() . '/js/javascript.js', array( 'jquery' ), 1, false);

} add_action('init','td_load_js'); (在fuctions.php中,仍然是相同的错误)

所以我不确定此刻有什么问题,即使单独留下标题也没有脚本声明也不起作用,所以我假设我必须以某种方式加载jQuery和其他脚本!我知道我不应该使用jQuery作为$但仅仅作为jQuery,但是我要离开我的代码请求$只是查看错误消息,直到我可以加载它。

更新:取消注册本地版本并运行我自己的版本肯定有效,但我仍然试图理解为什么本地版本没有自动加载,因为我看不到任何在其他主题文件中注册jQuery库,也不是它排队了!

1 个答案:

答案 0 :(得分:0)

  

联系表单7都需要它,将其视为jQuery和我自己的   自定义代码将其视为$

jQuery在WordPress中以noConflict模式加载,将代码中的$更改为jQueryhttp://api.jquery.com/jQuery.noConflict/

相关问题