lunes 18 de junio de 2007

Trackback, Technorati, GreaseMonkey..... Enlazando el blog...




Bueno, despues de darle cuatrocientas vueltas, parece que al fin he conseguido dejar el blog como yo quería... Lo primero que se me ocurrió es añadir la opción de Trackback a mi blog, que como bien se ve, está alojado en Blogger... Bien... Manos a la obra...

Investigamos un poco la opción "Vínculos de Retroceso" que el propio Blogger incluye... Tras un par de horas de discusión por irc, y unas cuantas busquedas en google, llegamos a una conclusión bastante frustrante: Si, es un método de Trackback... Y si, como era de esperar, solo sirve entre blogs alojados en Blogger... Una gran chorrada, ya que como me quiera linkar alguien externo, va bastante jodido...

Total, que empezamos a buscar métodos alternativos... En muchos de los blogs que visito en los que se habla acerca del Trackback mencionan una y otra vez la misma web: www.haloscan.com

Decido probar, a ver que me ofrece... Parece interesante, servicio de comentarios y de Trackback externo a blogger, pero completamente compatible con el, incluso auto instalable... Descargas tu plantilla, la subes a Haloscan, y te devuelven una configurada con su sistema de Trackback y Comentarios. Todo muy bonito, pero si ya tengo los comentarios de blogger, ¿para que quiero cambiar a un servicio externo? Ahora empieza a llegar lo complicado...

Tras probarlo, echaba de menos los comentarios propios de Blogger, así que vamos a ver como dejarlos. Solo quiero incluir el Trackback que me ofrece Haloscan. Vía google, como de costumbre, me encontré con esta web, que explica el proceso en perfecto inglés. Además del problema del inglés, me encuentro también con que está preparado para el viejo Blogger, del cual, puesto que soy recién llegado, poco se... Pero bueno, algo habrá que hacer, así que aunque sea complicado, me pongo a traducir el código antiguo usando la nueva codificación, con lo que el resultado fue el que veremos a continuación.

Repito una vez más, incluyendo este código en la plantilla de Blogger, lo que conseguiremos será que aparezca únicamente el link al Trackback de Haloscan, como se puede ver al final de este mismo artículo, así que vamos allá:


COLOCANDO EL TRACKBACK


Para inicializar el script de Haloscan, justo después de la etiqueta <head> añadimos:

<script src='http://www.haloscan.com/load/XXXXX' type='text/javascript'> </script>

En donde XXXXX es el nombre de usuario con el que estéis registrados en Haloscan (ah, ¿que no dije que había que registrarse? Venga so vagos... Que son cuatro datos...)

En mi caso, me logueo a Haloscan usando el nombre de usuario "tragy", por lo tanto XXXXX=tragy

Ahora tenemos que hacer que en cada entrada del blog aparezca una referencia al Trackback de cada artículo concreto, y aquí empiezan los problemas. En la web que cité antes, encontré como hacerlo para la vieja versión de Blogger, y la forma de incluir variables en medio de una URL ha cambiado bastante... A base de analizar y entender el código de la plantilla, y tomando como base el código que se puede obtener en la web de Haloscan, remezclado con el de la otra web, aquí teneis el resultado:

<!-- Empieza Trackback -->

<script src='http://www.haloscan.com/load/XXXXX' type='text/javascript'> </script>

<span class='post-comment-link'>

<a class='comment-link' expr:href='"http://www.haloscan.com/tb/XXXXX/" + data:post.id + "/"' expr:onclick='"HaloScanTB(" + "\""+ data:post.id + "\"" + ");return false;"'>

<script type='text/javascript'>postCountTB('<data:post.id/>');</script>

</a>

<noscript><a expr:href='"http://www.haloscan.com/tb/XXXXX/" + data:post.id + "/"'>Trackback</a> | </noscript>

</span>

<!-- Termina Trackback -->


Basicamente lo que se hace es que ejecute un script, en el cual se enlaza a una dirección de Haloscan+NombreUsuario+PostConcreto (este ultimo es ese data:post.id, que es una variable que usa Blogger, con la cual se asigna una id a cada entrada del blog, todas distintas entre ellas)
De nuevo, hay que substituir XXXXX por vuestro nombre de usuario de Haloscan.

A todo esto, podeis colocarlo donde querais. En mi caso, lo tengo colocado justo despues de:

<a expr:href='data:post.emailPostUrl' expr:title='data:top.emailPostMsg'>

            <span class='email-post-icon'> </span>

          </a>


Es decir, despues del icono de enviar por mail el artículo. En vuestra plantilla no tiene porque aparecer exactamente así, pero si tenéis activado ese icono, buscad data:post.emailPostUrl, por ejemplo, para llegar al sitio. Mas generalmente, puede ponerse en cualquier lugar que esté dentro de <div class='post-footer'>, que es el pie de cada entrada.


AÑADIR EL CONTADOR DE TECHNORATI


Ya puestos, pues decidí añadir un contador de referencias, cortesía de Technorati. Tras registrarme en Technorati, y “reclamar” mi blog, fui a la sección de Widgets, y me encuentro con un botoncito muy bonito, que se encarga de buscar resultados referentes a cada entrada de mi blog por medio de su url, aunque de nuevo con el problema de que está preparado para el viejo Blogger. A estas alturas ya no es problema, traduzco el código a la nueva versión, y queda esto (tan solo tuve que cambiar la variable que contiene el link permanente al post, y la forma del enlace):

<!-- Empieza Technorati-->

<script src='http://embed.technorati.com/linkcount' type='text/javascript'/><a class='tr-linkcount' expr:href='"http://technorati.com/search/" + data:post.url + "/"'/>


Por si alguien no se entera (o ha decidido saltarse media entrada...) lo que hace es llamar un script de Technorati que indicará el número de personas que enlazan con determinada entrada. Podéis ver que por ejemplo en uno de mis artículos aparece una referencia, gracias a que me ha enlazado un amiguete de www.elsenordelasmoscas.com.

Este script podeis meterlo en cualquier lugar del footer, aunque justo a continuación del Trackback que acabamos de incluir es un lugar bastante elegante, creo yo…

Y con esto, por fin puedo ofrecer una dirección de Trackback por si alguien me quiere enlazar (que lo dudo…) y además, mostrar en que sitios me están enlazando.


AÑADIR AUTODISCOVERY


Además, hay un sistema llamado auto-discovery que usan algunos blogs para poder hacer el Trackback de una manera mas automatizada, pero necesitan que el blog al que lo hacen este preparado para devolver ciertas respuestas…

De nuevo busco, y encuentro código para el viejo Blogger… Y van tres veces… Tras traducirlo, ha quedado tal que así… Podeis ponerlo por ejemplo justo después del script del Trackback, es decir, debe estar una vez dentro de cada post. Este trozo de código se encargará de proporcionar esas respuestas al blog que nos intenta “trackbackear”, y es el siguiente (ya sabéis, XXXXX=login de haloscan)

<!-- Trackback Auto-discovery RDF Code

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

xmlns:dc="http://purl.org/dc/elements/1.1/"

xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">

<rdf:Description

rdf:about='data:post.url'

dc:identifier='data:post.url'

dc:title='data:post.title'

trackback:ping="http://haloscan.com/tb/XXXXX/" + 'data:post.id' + "/">

</rdf:RDF>

-->


Tras terminar todo esto, dije yo: vale, a los demás ya les he facilitado bastante la vida… Pero ahora, ¿que hago yo para poder hacer trackback a otros blogs mas fácilmente?


HACER TRACKBACK FACILMENTE CON GREASEMONKEY


Pues rebuscando otro rato, me encuentro con un Plugin muy útil para Firefox, concretamente aquí me he encontrado esa referencia…
Instalamos el Complemento GreaseMonkey desde aquí, reiniciamos Firefox para que se active, y después vamos a esta otra web para instalar el script concreto que nos facilitará hacer Trackback desde el propio publicador de artículos de Blogger. Tras hacer clic en Install New Script, podemos dirigirnos a Blogger para comprobar que tenemos un nuevo recuadrito en el cual podemos introducir una serie de URLs para hacerles trackback…



Si funciona esto… Lo sabré cuando acabe de escribir la entrada…

Edit:Parece que no funciona... No aparece ninguna confirmación de que se haya enviado el trackback, ni aparece referenciado en el sitio en cuestión... Si alguien puede confirmarlo, que deje un comentario... O un trackback!!

Edit2: Andy Beard me ha contestado a un comentario que dejé en su web, y dice que a el si le funciona... A ver si sigo investigando...

Edit3: Menuda chorrada. La culpa la tuvo el recuadro que aparece para introducir nuestros datos de del.icio.us.... Es una parte opcional del script, para conectar nuestro blog con un sistema de tags y promoción de blogs... Yo, como no lo uso, al saltarme la ventanita, hacía click en Cancel, pensando que tenía que hacerlo cada vez que me apareciera la ventana. Aunque no usemos esta web para promocionar nuestro blog, debemos hacer click en OK en todos los cuadros de diálogo que aparezcan, para que quede configurado (sin datos, claro está...)

Una vez hecho esto, el script funciona sin problemas, y los trackbacks llegan correctamente a sus destinos. Mi enhorabuena a Stephen Weber por su script, y muchas gracias a Andy Beard por molestarse en comprobar que le funcionaba, así como de avisarme de que mis trackbacks le llegaron, aunque fueron marcados como spam por no incluir links hacia su blog...

Edit4: Además, he comprobado que el script solo funciona si el feed del blog está configurado como "Completo". Puede cambiarse en las opciones del blog, en la sección "feed del sitio".

Andy, Stephen, thanks for your help!!


9 comentarios:

LARdT dijo...

Pues yo no he tenido tanta suerte, CUANDO PUBLICO sale el cartelito de sending ping pero ni veo el trackback en la web de destino ni nada en mi propio post.

LARdT dijo...

Sigue sin funcionarme...

LARdT dijo...

Además HALOSCAN no me da opciones si no le dono 12$ antes...

Tragy dijo...

Supongo que como dirección para el TrackBack estás usando esta: http://haloscan.com/tb/tragy/6724970680058527126

Y que tendrás algún link en tu artículo hacia el mío. Sino, prueba en Haloscan a darle a Manage Trackback, y luego a Send a Trackback Ping... Yo no tuve que donar nada, y puedo acceder ahí perfectamente.

Un saludo!

LARdT dijo...

Pues no. En Haloscan despues de crear mi cuenta, hago login para entrar en Manage Trackbacks y me dice que tengo una basic account. Cuando le fuerzo a "Manage" me lleva a una pantalla donde me pide los 12US$...

Tragy dijo...

Pues si que es raro, yo me acabo de crear una cuenta nueva para probar, y me salen todas las opciones en el panel..... No se que es lo que puede pasar..

LARdT dijo...

Yo lo he vuelto a intentar y me ocurre otra vez lo mismo ¿podrias crearme tu una cuenta con los siguientes datos:?

Username: lardt3 (ya he usado lardt y lardt2!)

URL: http://lardt2.blogspot.com/

PASSWORD: "password" por ejemplo.

A ver si asi puedo entrar en "Manage"...

Tragy dijo...

Está creada, 'lardt3' como usuario y 'password' como contraseña... Y me deja acceder! xD

Si no puedes, quizá sea alguna restricción que tengan por ip, o vete tu a saber...

Una vez logueado, desde aquí me deja hacer pings: http://www.haloscan.com/members/tbping.php

LARdT dijo...

Muchisimas gracias, YA PUEDO ENTRAR!!!
Ahora me voy a comer pero luego veré bien el tema. Intento sólo implemtar los trackbacks nada más y el resto que se quede como lo tengo ahora.

Gracias de nuevo, hablamos.