JMiur [E]

El protocolo Open Graph es el que permite integrar las páginas webs con Facebook y los datos que les enviaremos cuando, por ejemplo, alguien usa el botón de Me Gusta.

Por lo que a nosotros nos puede interesar, basta saber que son etiquetas META que es posible agregar en nuestros sitios aunque en Blogger, hay que comprender (y aceptar) que hay limitaciones impuestas por el mismo servicio y los datos a los que nosotros podemos acceder por lo tanto, esto no será una panacea.

Primero que nada, yo recomendaría agregar dos atributos a la etiqueta HTML que es la tercera línea de cualquier plantilla; una nos permitirá evitar problemas en Internet Explorer y la otra ayudará a que este nuevo tipo de etiquetas sean interpretadas correctamente. En una plantilla común, deberia decir esto:
<html xmlns='http://www.w3.org/1999/xhtml' xmlns:b='http://www.google.com/2005/gml/b' xmlns:data='http://www.google.com/2005/gml/data' xmlns:expr='http://www.google.com/2005/gml/expr' xmlns:fb='http://www.facebook.com/2008/fbml' xmlns:og='http://opengraphprotocol.org/schema/'>
y en una de las nuevas plantillas, esto otro:
<html b:version='2' class='v2' expr:dir='data:blog.languageDirection' xmlns='http://www.w3.org/1999/xhtml' xmlns:b='http://www.google.com/2005/gml/b' xmlns:data='http://www.google.com/2005/gml/data' xmlns:expr='http://www.google.com/2005/gml/expr' xmlns:fb='http://www.facebook.com/2008/fbml' xmlns:og='http://opengraphprotocol.org/schema/'>
Algunas de las nuevas etiquetas de Open Graph son similares a las que usamos habitulamente; por ejemplo, hay dos principales:
<meta property="og:title" content='nombre_del_sitio' />
<meta property='og:description' content='descripcion_del_sitio'/>
og:title es igual que la etiqueta <title></title>
og:description es igual que la etiqueta <meta name='description' content='...'>

Entonces, ¿es necesario duplicarlas?

No, en absoluto, es indiferente salvo que quisieramos que en Facebook se viera algo distinto porque sólo hay que saber que Facebook da prioridad a esas etiquetas así que si hay dos, siempre usará la de Open Graph.

Preguntan mucho algo que por ahora no tiene respuesta; la descripción que se muestra no es un resumen de las entradas y eso, que yo sepa, no tiene solución posible ya que no hay nada que podamos agregar para evitarlo salvo que escribamos una etiqueta META description para cada entrada. Tampoco sirve usar JavaScript porque no será reconocido. Lo más que podemos hacer es condicionarlo igual que hacemos con el resto:
<b:if cond='data:blog.pageType == &quot;item&quot;'>
  <title><data:blog.pageTitle/></title>
  <meta property="og:title" expr:content='data:blog.pageTitle' />
  <meta expr:content='data:blog.pageName + &quot; texto texto texto texto texto texto texto texto texto &quot;' name='description'/>
  <meta expr:content='data:blog.pageName + &quot; texto texto texto texto texto texto texto texto texto &quot;' property='og:description'/>
<b:else/>
  <title><data:blog.title/></title>
  <meta property="og:title" expr:content='data:blog.pageTitle' />
  <meta name='description' content=' texto texto texto texto texto texto texto texto texto ' />
  <meta property='og:description' content=' texto texto texto texto texto texto texto texto texto ' />
</b:if>
Con og:type podemos indicar el tipo de sitio; por ejemplo, que se trata de un blog:
<meta property='og:type' content='blog' />
Con og:url indicamos la dirección URL del sitio o de la página en si misma:
<meta property='og:url' expr:content='data:blog.url' />
Con og:site_name indicamos el nobre de nuestro sitio:
<meta property='og:site_name' content='mi_blog' />
Una que puede ser útil es la que define la imagen a mostrar. Por defecto, Blogger agregar una etiqueta LINK con la imagen principal de las entradas si es que hay una. Es una miniatura de 72x72 que se corresponde con la primera imagen que hayamos agregado al post; esto, funcionará generalmente bien excepto en el home u otros páginas de navegación en cuyo caso, la imagen a mostrar será ... cualquiera. Para evitarlo podemos usar una condición, indicando que si no es una entrada, la imagen sea la que nosotros decidamos:
<b:if cond='data:blog.pageType != &quot;item&quot;'>
  <meta property='og:image' content='URL_de_la_imagen' />
</b:if>
Hay más etiquetas que tienen sentido cuando se trata de sitios comerciales, de venta de productos o servicios, por ejemplo, las etiquetas de ubicación y de contacto: og:latitude, og:longitude, og:street-address, og:locality, og:region, og:postal-code, og:country-name, og:email, og:phone_number, og:fax_number, etc.

Una buena forma de saber si hay algo que debemos corregir o agregar a nuestro blog, es utiizar un servicio de Facebook para Desarrolladores llamado URL Linter. Si entramos y colocamos una dirección, ya sea del home de nuestro sitio o de una entrada individual, veremos qué datos lee y de dónde son leidos.

Un ejemplo del home de este blog y un ejemplo de una entrada cualquiera.

 
CERRAR