En algunas ocaciones nos topamos con un problema que, aunque poco usual, a los que somos mas diseñadores web que programadores nos mete en un problema. Algunas personas desean tener separados su sitio web a su blog, y muchas veces utilizan servicios gratuitos como blogger para hospedarlos ya que les parece sencillo actualizarlos por si mismos. El problema llega cuando vienen a nosotros y nos piden incrustar los últimos post de su blog en su página web.

Para esto existes varias librerias que crean la función, algunos mejores que otros. En mi caso particular el que mejores parametros me brindo fue Simplepie, un poderoso lector de feeds que a diferencia de un lector RSS este se encarga de leer varios formatos de RSS y Atom, permitiendo crear cache, parsear feeds, verificando el formato y obtener la información que deseamos.

El formato de ayuda que encontre en varios blogs fue básico, en algunos solo leía el post colocando titulo y teaser (extracto, resumen o como le quieran llamar), pero yo necesitaba que leyera la imagen del post y colocara el clásico letrero al final de “leer mas”. Además de esto me tope con errores de lectura que uno aveces no toma en cuenta o no piensa que podrían pasar, como el leer listas, encabezados y etcs que pueden arruinar el formato que teniamos predestinado.

Aquí les comparto el código que use, a manera practicamente de un “pastie” para que lo coloquen lo usen y lo aumenten (sería agradable que compartieran su experiencia y los complementos que usen)

Primero hay que descargar el fichero de la página oficial de Simplepie, después, lo que hay que hacer es montar los parametros iniciales para que Simplepie funcione en nuestro archivo:

[code]<?php
require(“simplepie.inc”); //adjuntamos este archivo para que funcione simplepie

$feed = new SimplePie();  //creamos un nuevo objeto del tipo SimplePie que usaremos para leer los feeds
$feed->set_feed_url(“http://tublog.blogspot.com/feeds/posts/default“); //la direccion de la cual leera los feeds
$feed->strip_htmltags(array_merge($feed->strip_htmltags, array(‘h1’, ‘a’, ‘img’))); //esta en este caso elimina los estilos de h1, a e img para que podamos darle estilos propios con el css de nuestro documento
$feed->init(); $feed->handle_content_type();
?>[/code]
Esto debe ser colocado al inicio del documento (de preferencia).  Después dentro de nuestro archivo, donde se vaya a colocar la incrustación de los post. Escribimos lo siguiente, que basicamente es la creación de un bucle para leer cada uno de los post y la utilización de sus elementos:

[code]
<div id= “columna”> //contenedor opcional
<ul> // creamos la lista
<?php
$max = $feed->get_item_quantity(3);  // aquí delimitamos el número de post que vamos a colocar, en este caso “3”
for ($x = 0; $x < $max; $x++): //creamos el bucle
$item = $feed->get_item($x);
?>
<li>
<?php if ($enclosure = $item->get_enclosure()){ ?> // nos permite leer propiedades especificas, en este caso de las imagenes
<div><?php echo ‘<img src=”‘ . $enclosure->get_thumbnail() . ‘” width=”90″  alt=”‘ . ‘” />’; ?> </div> //definimos las dimensiones de la imagen
<div><a href=”<?php echo $item->get_link(); ?>”><?php echo $item->get_title(); ?></a><br /><?php echo substr_replace($item->get_description(), ‘…’, 280); ?> <a href=”<?php echo $item->get_link(0); ?>”>leer mas</a><?php } ?></div> //coloca el texto de “leer mas” al final de la descripción o resumen
</li>
<?php endfor; ?> //termina el bucle
</ul>
</div>
[/code]

Con este código podrán mostrar imagen, título, resumen y el letrero de “leer mas” para dar una opción al lector de ir al post. Ustedes pueden enriqueserlo y darle el estilo gráfico que deseen. Para mas información consulten la página oficial de Simplepie y aquí directamente para ver todas las funciones que Simplepie ofrece.