Mejorando WPG2: wpg2link

19 October 2005 at 21:05

El problema

Como ya he contado anteriormente, recientemente he instalado el Gallery2 y lo he integrado con el WordPress mediante el plugin WPG2. Con este plugin, además de sincronizar los usuarios de WordPress con los de Gallery2, podemos añadir imágenes en nuestros posts simplemente con los tags <wpg2> y <wpg2id>. Con el primero añadimos la imagen mediante su path, y con el segundo, lo añadimos por su id. Por ejemplo:

<wpg2>album/foto01.jpg</wpg2>

El problema es que con estos tags no es posible enlazar a una imagen/álbum desde un enlace de texto. Es cierto que puedo poner a mano la URL de la imagen/álbum en los enlaces, pero si alguna vez cambio las reglas de reescritura del Gallery (parecido a los permalinks de WordPress), tendré que revisarme todos esos enlaces repartidos por los posts y corregirlos uno a uno. Como no estoy dispuesto a hacerlo he pensado en crear otro pseudotag, <wpg2link> que me dé la URL. De esta manera yo podría usar algo así como

<a href="<wpg2link>album/foto01.jpg</wpg2link>">foto</a>

que se traduciría en algo como:

<a href="http://www.example.com/photos/album/foto01.jpg">foto</a>

Así, si alguna vez cambiara las reglas de reescritura de Gallery2, el enlace cambiaría automáticamente para apuntar a la dirección correcta.

La solución

Después de estudiar el código tanto del plugin WPG2 como de Gallery2 he visto que sería suficiente modificar el fichero wp-content/plugins/wp-gallery2/g2embed.php. Lo que he hecho ha sido añadir dos funciones: una que devuelve la URL de la imagen a partir de su path, y otra que se encarga de sustituir el pseudotag por la URL generada automáticamente.

Cuando ya lo tenía funcionando, he intentado averiguar como podía hacerle llegar estas modificaciones a los autores del plugin y mientras buscaba por la página de plugin y por los foros, he encontrado un post en el foro que hablaba justamente de esto. Pero allí comentaban usar <a href="wpg2link:album/foto01.jpg">foto</a>, que me ha gustado más que lo de <wpg2link></wpg2link>, y ha sido la abreviatura que finalmente he usado. Pero para justificar mi código, he de decir que la implementación del foro me parecen una chapuza :-P

Para aquellos a los que le interese esta funcionalidad adicional, os podéis descargar mi parche y lo aplicáis con patch -p0 < g2embed-wpg2link.patch, suponiendo que estáis en el directorio wp-content/plugins/wp-gallery2/ y que el parche se encuentra en ese mismo directorio.

Por cierto, no he encontrado ninguna forma de contactar con los desarrolladores. Por no encontrar no he encontrado ni una lista de correo de desarrolladores. Supongo que podría poner un post en el foro, me imagino que alguno de los desarrolladores lo debe leer.

4 Responses to “Mejorando WPG2: wpg2link”

  1. [...] Divendres xerrava amb n’Eduard sobre els plugins que darrerament ha instal·lat al seu WordPress, entre ells el de Galery i com aquest s’integra amb Google Maps (modificació inclosa). També me va comentar que volia provar de muntar un sistema automàtic de podcast amb l’ajuda de Festival i que estava estudiant la manera de fer-ho. [...]

  2. David says:

    Hola ,

    He encontrado tu blog buscando desesperadamente el WPG2 2.0 plugin para
    integrar la galerías a los blosg WordPress. Por desgracia, los dos enlaces
    “orginales” en los que se encontraba el plugin parecen rotos, y no hay forma
    humana de encontrar el dichoso plugin.

    Te estaría infinitamente agradecido si tú tuvieras una copia de seguridad del
    plugin y me la pudieras hacer llegar a casado.d(at)gmail.com

    Muchas gracias de antemano,

    David Casado

  3. Eduard says:

    Buscando el google, he encontrado la nueva página del plugin WPG2 versión 2.x. Sin embargo, la página para las versiones posteriores está en la sección de plugins del “WordPress Extend”.

  4. [...] usaba Gallery2 por su integración con WordPress mediante el plugin WPG2 (para el que desarrollé una mejora). Pero si bién era una solución válida, resultaba demasiado compleja. Era como matar moscas a [...]