WordPress Jquery Confliction with Plugin

Hey guys, thanks in advance for your help. I’ve done my research and I’m a bit stumped with this…

I’m building a WordPress website for a client and it is going to have an e-store. I’m using wp-ecommerce. All of the store pages are loading with a javascript error:

Read More

http://www.thecollectiveclothingco.com/products-page/t-shirts/

jQuery("form.product_form").livequery is not a function
[Break On This Error] jQuery("form.product_form").livequery(function(){ 

After some extensive google-age, I believe I’ve diagnosed the issue as a script conflict. In other words, either WP or the plugin itself is serving up jquery, and I’m also including it for some other things on the site. When I delete my jquery script call, the issue goes away and the store works fine. But I need that jquery…

I’ve read about using WP enqeue to fix the issue:

function my_init_method() {
    if (!is_admin()) {
        wp_deregister_script( 'jquery' );
        wp_register_script( 'jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js');
        wp_enqueue_script( 'jquery' );
    }
}    
add_action('init', 'my_init_method');php wp_head(); 

I believe I’ve done this right, but does not seem to be fixing anything.

Any ideas? Thanks again.

EDIT:

Alright, I figured it out… it was the enqueue script that fixed things. I wp(head); had to come before the deregister and enqueue part. I must have read the documentation wrong. Here’s what I added to my header:

<?php
wp_head();
wp_deregister_script('jquery');
wp_enqueue_script('jquery', MYURL .'http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js', FALSE, '1.4.4');
 ?>

Related posts

Leave a Reply

2 comments

  1. There are currently two copies of jQuery loaded on site:

    1. In header there is jQuery bundled with WordPress, likely requested by some plugin.
    2. In footer there is jQuery from Google CDN, likely added by your code?

    Obviously this is one too many. There are couple of ways to handle it:

    1. If you are fine with using bundled copy you need to register/enqueue your scripts and declare jquery in dependencies, see in Codex: wp_register_script(), $deps argument.
    2. You can re-register jQuery to Google CDN, still good idea to register your script with it as dependency.

    Your code seems fine except this at end php wp_head();, php makes no sense, and wp_head() call should be in theme.