wp_enqueue_script theme plugin functions adding jquery wordpress conflict

theme - Conflicto de Jquery de Wordpress con el complemento



jquery wordpress (3)

Hola chicos, gracias de antemano por su ayuda. Hice mi investigación y estoy un poco perplejo con esto ...

Estoy construyendo un sitio web de Wordpress para un cliente y va a tener una tienda electrónica. Estoy usando wp-ecommerce. Todas las páginas de la tienda se cargan con un error de javascript:

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(){

Después de un extenso Google-age, creo que he diagnosticado el problema como un conflicto de scripts. En otras palabras, WP o el plugin en sí está sirviendo jquery, y también lo estoy incluyendo para otras cosas en el sitio. Cuando elimino mi llamada de script de jquery, el problema desaparece y la tienda funciona bien. Pero necesito ese jquery ...

He leído sobre el uso de WP enqeue para solucionar el problema:

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();

Creo que lo hice bien, pero no parece arreglar nada.

¿Algunas ideas? Gracias de nuevo.



De acuerdo, lo descubrí ... fue el guión en secuencia lo que arregló las cosas. Yo wp (cabeza); tuvo que venir antes de la parte de anulación y puesta en cola. Debo haber leído la documentación equivocada. Esto es lo que agregué a mi encabezado:

<?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''); ?>


Podría intentar ejecutar su jquery con una opción noConflict http://api.jquery.com/jQuery.noConflict/

p.ej,

var j = jQuery.noConflict(); // Do something with jQuery j("div p").hide(); // Do something with another library''s $() $("content").style.display = ''none'';