Como usar GD Star Rating con elementos dinámicos (ajax)

21 Abr

Últimamente he estado usando bastante este gran plugin para WordPress con el que puedes crear fácilmente un sistema de votaciones.

El problema que tenía, es que al cargar los posts o comentarios con ajax, las votaciones no funcionaban. Esto se debe a que el evento click de jQuery, solo funciona con los elementos que están cargados en la página y no los que vamos añadiendo posteriormente.

Buscando entre el código de GD Star Rating he encontrado una solución que no podía ser mas sencilla. Se basa en asignarle a las votaciones el evento click de forma permanente a los elementos que coincidan con el selector, mediante live.

Solo tenemos que ejecutar el siguiente código en nuestro script

jQuery(".gdsr_rating_as > a").live('click',function() { gdsr_rating_standard(this); });

jQuery(".gdthumb > a").live('click',function() { gdsr_rating_thumb(this); });

La primera linea es para votaciones con estrellas y la segunda para los pulgares.

Espero haber ayudado a toda la gente que andaba buscando algo parecido, por que no he conseguido encontrar nada por la web.

12 comentarios to “Como usar GD Star Rating con elementos dinámicos (ajax)”

  1. sistemas ruleta 14 mayo 2010 a 21:04 #

    !No puedo creer que vaya a funcionar!

    • ozzysong 25 mayo 2010 a 09:59 #

      I want to believe! :)

  2. DUQUE 20 mayo 2010 a 08:43 #

    Perdona por preguntarte, en que parte del script tienes que poner el código que muestras, dentro del plugin o en algún archivo de WordPress:

    jQuery(“.gdsr_rating_as > a”).live(‘click’,function() { gdsr_rating_standard(this); });
    jQuery(“.gdthumb > a”).live(‘click’,function() { gdsr_rating_thumb(this); });

    Gracias

    • ozzysong 25 mayo 2010 a 09:45 #

      El código debe ir dentro del método .ready() de jQuery.

      Quedaría así:

      jQuery(document).ready(function(){

      //Código

      });

      • HectorMG 2 octubre 2010 a 00:20 #

        Hola.
        Quería preguntarte si hay alguna manera de insertar el plugin sólo en determinadas entradas.
        Tengo una página web en la que quiero organizar un concurso de djs. Para que la gente pueda votar he instalado este plugin, pero obviamente aparece en todos los posts de la web.
        Me interesaría saber si hay alguna manera de configurarlo para que sólo salga en los post que yo quiera.

        Gracias de antemano.

        • ozzysong 3 octubre 2010 a 23:18 #

          Hola!

          La verdad es que no lo he probado, pero se me ocurre que puedes activar el plugin en el post, dependiendo de la categoría a la que corresponda.

          Para eso puedes usar la función in_category() de WordPress. Puedes ver unos ejemplos en el sitio oficial.

          Un saludo.

      • ozarga 25 noviembre 2010 a 07:09 #

        Hola, que tal, me gustaría saber a que archivo te refieres para insertar el código, ya que he encontrado varios js con el método ready y no se en cual insertarlo.

        • ozzysong 25 noviembre 2010 a 10:18 #

          No importa en que script lo hagas, mientras se cargue después del js de “GD Star Rating”.

          Si usas jQuery, puedes crearte un script y añadir el código dentro de $(document).ready();

          Saludos!

  3. pablo 12 diciembre 2010 a 03:00 #

    Buenas, disculpa mi ignorancia, podrias ejemplificar un archivo en el que pego el codigo que mencionas para lograr que las estrellitas hagan caso cuando hago clic
    muchas gracias

    Pablo

  4. cristina 25 noviembre 2012 a 22:05 #

    tengo un problema con este plugin que google no indexa los rating de los articulos… y no aparecen las estrellas en las busquedas… me ayudaria mucho saber que puede ser? podrias ayudarme? o simplemente arrojar algo de luz al problema? gracias de antemano

Trackbacks/Pingbacks

  1. Bitacoras.com - 21 abril 2010

    Información Bitacoras.com…

    Valora en Bitacoras.com: Últimamente he estado usando bastante este gran plugin para WordPress con el que puedes crear fácilmente un sistema de votaciones. El problema que tenía, es que al cargar los posts o comentarios con ajax, las votaciones no fu…..

  2. Tweets that mention Como usar GD Star Rating con elementos dinámicos (ajax) « In Nomine Pixel -- Topsy.com - 21 abril 2010

    […] This post was mentioned on Twitter by ozzysong, ozzysong. ozzysong said: Como usar GD Star Rating con elementos dinámicos (ajax): http://wp.me/ps7b5-eA […]

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: