Por ejemplo, supongamos que sólo quisiéramos mostrar las imágenes, podríamos crear un script que leyera la última publicada para mostrarla en la sidebar como si fuera un gadget.
Agrego mi función antes de </head>:
<script type="text/javascript">
//<![CDATA[
function leerpicsfacebook(json) {
// aquí voy a iniciar algunas variables
var data, tipo, link, source, picture, from, extra;
var salida = "";
var extra = "";
// como en todos los otros ejemplos, se ejecuta un bucle que lee una cierta cantidad de entradas
for (var i = 0; i < json.data.length; i++) {
var post = "";
// guardo los datos de cada entrada en un array llamado data
data = json.data[i];
// si no hay nada, termino porque significa que hay menos de las que solicité leer
if (i==json.data.length) { break; }
tipo = data.type; // es dato nos indica qué tipo de publicación es (busco que sea photo)
// este dato, indica quién lo publicó
from = data.from.name;
// como sólo quiero ver las mias, si no lo son, las ignoraré
if(from!="mi_nombre") {tipo="dummy";}
// si es una Foto, voy a leer los datos
if(tipo=="photo") {
picture = data.picture; // esto contiene la dirección URL de la miniatura
link = data.link; // esto contiene la dirección URL a la imagen real que puede estar en Facebook o bien ser un enlace externo
// voy armando mi código HTML para mostrarla
post += "<a target='_blank' title='" + message + "' href='" + link + "><img src='" + pic + "'/></a>";
// si la foto está en Facebook sólo podrá verse si uno está logueado
if(link.indexOf("www.facebook.com")>0) {
// le agregaré un texto debajo para indicarlo
extra = "<span>VIA FACEBOOK</span>"
}
// creo el código HTML de mi gadget
salida += "<div class="fbpic">";
salida += post + extra;
salida += "</div>";
// y termino porque sólo quiero mostrar una, la última publicada
break;
}
}
// terminado el bucle, escribiré los datos en un DIV al que le pondre un ID especifico
document.getElementById("picfacebook").innerHTML = salida;
}
//]]>
</script>
<style> .fbpic { background-color: #BBB; border: 2px solid #FFF; display: table-cell; height: 150px; text-align: center; vertical-align: middle; width: 150px; } .fbpic img { max-height: 120px; max-width: 130px; } .fbpic span { color:#000; display:block; font-size:11px; text-align:center; } </style> <div id='picfacebook'> C A R G A N D O </div> <script src="http://graph.facebook.com/mi_nombre/feed?limit=20&callback=leerpicsfacebook"></script>
Lo mismo puedo hacer con los videos, por ejemplo, así, mostraría los últimos tres publicados:
<script type="text/javascript"> //<![CDATA[ function leervidsfacebook(json) { var data, tipo, link, source, picture, from; var salida = ""; var contarsalidas = 0; for (var i = 0; i < json.data.length; i++) { var post = ""; data = json.data[i]; if (i==json.data.length) { break; } tipo = data.type; from = data.from.name; if(from!="mi_nombre") {tipo="dummy";} if(tipo=="video" { source = data.source link = data.link picture = data.picture post += "<a target='_blank' href='" + source + "'><img src='" + picture + "'/></a>"; salida += "<div class='fbvid'>"; salida += post; salida += "</div>"; contarsalidas ++; if(contarsalidas==3) { break; } } } document.getElementById("vidfacebook").innerHTML = salida; } //]]> </script> <style> .fbvid { margin: 5px 0; } .fbvid img { background-color: #FFF; height: 97px; padding: 2px; width: 130px; } </style> <div id='vidfacebook'> C A R G A N D O </div> <script src="http://graph.facebook.com/mi_nombre/feed?limit=20&callback=leervidsfacebook"></script>
leer.id es el número indicativo de la publicación leer.from.name es el nombre del Perfil o Page leer.from.id es el ID del Perfil o Page leer.icon es la imagen del ícono distintivo del tipo de publicación leer.type indica el tipo de publicación leer.created_time y leer.updated_time son las fechas de creación leer.picture es la imagen miniatura leer.source es la fuente (de un video o swf por ejemplo) leer.name es el título del video o del enlace leer.caption es el nombre del servicio que provee el video leer.description es el texto secundario del video o del enlace leer.application indica la aplicación que lo agrega (si es que hay una) leer.properties.name, leer.properties.text y leer.properties.href son las referencias al sitio original de un enlace leer.likes.count es la cantidad de MeGusta que posee esa publicación leer.likes.data[i].name es la lista de usuarios que lo han marcado con Me Gusta leer.comments.count es la cantidad de comentarios que tiene una publicación leer.comments.data[i].from.name es el nombre de los comentaristas leer.comments.data[i].message es el comentario en si mismo leer.comments.data[i].created_time es la fecha del comentario
leer.paging.previous es el enlace que deberíamos utilizar para leer las 25 publicaciones anteriores (si es que hay) por ejemplo: http://graph.facebook.com/mi_nombre/feed?limit=25&since=2011-01-17T04%3A31%3A59%2B0000 leer.paging.next es el enlace que deberíamos utilizar para leer las 25 publicaciones siguentes (si es que hay) por ejemplo: http://graph.facebook.com/mi_nombre/feed?limit=25&until=2011-01-14T08%3A23%3A38%2B0000
2 comentarios:
¡¡¡Ahhh!!! ¡WTF!
Ahi en esa página, el script está pero n ose le nican datos y por eso no se ve nada pero, no sé quñe código dice en tu plantilla. El código fuente dice remplaza_fecha('') es decir, no hay dato.
El gadget de Seguidores utiliza los datos que tiene tu plantilla. Sólo puedes modificar esos colores si cambias esos datos; fíjate en esta entrada pero recuerda que, si usas variables, puede ser que al cambair esos datos, también cambien otras cosas.
El color blanco en etiquetas se debe a que así está definido en tu plantilla:
.sidebar ul li, .rsidebar ul li, .lsidebar ul li {
............
background: #FFFFFF url(http://www.revolutiontwo.com/demo/church/wp-content/themes/church_10/images/sidebartop.gif) no-repeat 0 0;
}
elimina eso de #FFFFFF y será negro.
No es que el formulario tenga problemas sino que los comentarios están cerrados.