[su_wiloke_sc_company_website]ACTUALIZACION: Meneame ha prohibido el uso de IFRAME’s con sus páginas. Se ha renovado este plugin a la versión 0.2. En la página oficial del plugin verás siempre la última información y versión. Todo lo que hay escrito aquí abajo es antiguo de la versión 0.1 y ya no funciona así.
Meneame es sin duda un lugar de promoción de noticias único, y a veces uno mismo pone sus noticias, pero la mayoría las ponen otros, y puede que no nos enteremos. Lo ideal sería poder tener una herramienta que automáticamente supiera cuando nos menean alguna noticia y que se añadiera la caja de votaciones de meneame en nuestro propio artículo en el blog, de esa forma, todos nuestros visitantes también podrían conocer que esa noticia está publicada en Meneame y votar.
He visto algunos plugins por la red que simplemente te añaden un enlace para que la noticia sea meneada. Un poco más allá fue Manuel de Mangas Verdes que realizó un plugin usando la API de Meneame y que añadía una imagen que invitaba a menear la noticia si no estaba ya meneada, o a añadir un voto, pero era un simple enlace a la página de Meneame. Lo que buscaba era no tener que ir a esa página, ser más comodón y tener la caja de «menealo!» en el propio artículo del blog y que funcionara sin tener que ir a Meneame.
Cómo está hecho
Al principio se me ocurrió hacer una llamada con PHP a la página de meneame usando los mismos valores que usan ellos cuando se pulsa el botón, pero la IP desde donde se realizaba el voto no era la del cliente (la del usuario que visita el blog), sino que era la del servidor del blog. Luego se me ocurrió hacerlo con AJAX, pero esta tecnología no permite realizar conexiones a páginas fuera de tu propio dominio (por seguridad).
Desde que probé estas cosas ha pasado mucho tiempo, y esta mañana, no se por qué, me ha surgido una idea que podría tildarse de un «poco chapucera» pero sirve perfectamente. He programado el plugin y creo que funciona correctamente. ¿Cómo lo hago?
La única forma que se podría incluir el voto de Meneame para que funcionara (ya que tienen como seguridad un hash como uno de los parámetros que se mandan, así como que guardan la IP y otras cosas), era metiéndolo en un IFRAME, es decir, en una ventana aparte. El problema es que añadir una ventana entera quedaría muy feo y poco práctico. Así que se me ha ocurrido usar CSS para ocultar las partes de la ventana que no interesan integrar en un post.
En el gráfico se ve más o menos la idea que se me ha ocurrido. Se trata de añadir a un IFRAME la dirección donde se encuentra la página meneada. Ese IFRAME desplazarlo dentro de un DIV negativamente, hacia arriba y la izquierda, de forma, que se empiece a ver desde el cuadrado verde. Por otra parte, al DIV que muestra el IFRAME darle sólo la anchura y altura suficientes para que sólo se vea la caja de votaciones (intersección entre el azul y el verde).
Al jugar con CSS es importante que funcione en varios tipos de navegadores. Lo he probado correctamente en Internet Explorer 6.0 o superior, Firefox 1.5 o superior, Safari y Opera 9.0 o superior.
Luego, pensando más, he programado en el plugin que automáticamente añade la caja de votaciones en los artículos que te han meneado. Cada vez que alguien menea alguna de tus noticias en Meneame, ésta envía un pingback a tu blog, de forma que el plugin añade unos campos alternativos a tu artículo que determinan la dirección de la noticia meneada.
Luego para aderezarlo más he creado algunas opciones de la posición de la caja dentro del texto, los días que quieres que aparezca esa caja tras ser meneada la noticia (por no tener meneos antiguos) y un histórico de lo que te han ido meneando.
El plugin de WordPress
El plugin está en su primera versión, lo he hecho rápidamente hoy y aparentemente funciona, pero seguro que todos tenéis más opciones y sugerencias por tanto os invito a que contactéis conmigo y me las contéis, así como los errores que veáis.
Plugin Name: Menealo
Plugin URI: https://86400.es/menealo-plugin-wordpress/
Description: Permite integrar la caja de meneos de Meneame.net en tus posts
Version: 0.1
Author: Alex dantart
Author URI: https://86400.es
Forma de instalarlo
Como otros plugins es muy sencilla su instalación:
- Se descomprime el fichero que encontrarás en el ZIP de descarga dentro de la carpeta /wp-content/plugins de tu WordPress
- Se activa en la administración, apartado Plugins
- En Opciones -> Menéalo, tienes las opciones del plugin de las que hablaba
¿Y si no tengo WordPress?
Bueno, el plugin de WordPress lo hace mucho más automático para los que tenemos un WordPress en un alojamiento, pero si tienes cualquier otro tipo de blog, o de página Web y quieres incluirlo aquí puedes ver el corazón de esta idea y lo fácil que resulta. En primer lugar hay que definir unos estilos para el «truco» de ocultar lo que no queremos de la página de Meneame en el IFRAME, y luego añadir el DIV en la parte que queramos de la página:
<style>#caja { margin:10px; border:0; width:70px; height:75px; z-index:10; overflow:hidden; } #meneame { border:0; padding:0; margin:-195px 0 0 -200px; overflow:hidden }</style>
<div id=»caja» style=»float:right;»><iframe scrolling=»no» id=»meneame» src=»{dirección en meneame de tu artículo}‘» scrolling = «no» frameborder = «0» width=»800″ height=»300″></iframe></div>
Como ves, el «float:right» es el que define que esté a la derecha del texto donde lo vayas a poner, pero si sabes CSS, te costará bien poco poner el div llamado caja de la forma que tu quieras y donde tu quieras.
Comentarios y sugerencias
Espero vuestros comentarios, sugerencias y errores para poder mejorar este plugin. Estoy trabajando ahora mismo en una versión para Digg, aunque es algo más compleja porque Digg no permite votos de usuarios anónimos y cuando se va a votar aparece una capa que invita a registro que quedaría muy mal con este método, pero ya se me están ocurriendo cosas. Si quieres contactar conmigo hazlo a través de este formulario.
[tags]meneame, menealo, plugin, wordpress[/tags]