Integrar RSS / XML en tus páginas

RSS es un modelo basado XML que se emplea habitualmente en blogs y cada vez en más sitios que ofrecen información, como por ejemplo http://www.habitamos.com, de donde tomaremos el archivo rss con la información que vamos a mostrar en nuestra página web.

Para este ejercicio vamos a usar la clase más ligera y eficiente de PHP, lastRSS, comentada en inglés aquí http://lastrss.webdot.cz/ y que podeís descargar de aquí.


<?php
/*
Ejemplo de como tratar un archivo RSS para mostrarlo en nuestra página como código propio.
Fuente RSS Sección de Trabajo tomada de Habitamos.com
Fuente PHP Libreria LastRSS
*/

// incluimos lastRSS
include “./lastRSS.php”;

// Creamos un objeto lastRSS
$rss = new lastRSS;

/*
Establecer el directorio donde se guardan las copias y el tiempo durante el que se guardan antes de volver a consultar la fuente (1200 segundos)
(hay que modificar las propiedades del directorio para poder escribir los archivos de cache, instrucción chmod 777 se puede hacer desde un cliente FTP)
*/
Quitar las dos barras del inicio de cada línea para que se active
//$rss->cache_dir = ‘./cache’; //directorio llamado cache en el mismo sitio donde esta lastRSS.php
//$rss->cache_time = 1200;

$rss->items_limit = 5; //número de items que quieres ver
$rss->CDATA = ‘content’;

// Intenta grabar y tratar el archivo RSS
if ($rs = $rss->get(‘http://www.habitamos.com/search?busqueda=2&province_id=x&section_id=7&format=rss’)) {
// Muestra el logo del sitio que ofrece la información (si está presente)
if ($rs[image_url] != ”) {
echo “<a href=\”$rs[image_link]\”><img src=\”$rs[image_url]\” alt=\”$rs[image_title]\” vspace=\”1\” border=\”0\” /></a><br />\n”;
}
// Muestra título y enlace del sitio web del que tomamos la información
echo “<big><b><a href=\”$rs[link]\”>$rs[title]</a></b></big><br />\n”;
// Mostrar la descripción del sitio
echo “$rs[description]<br />\n”;
// Muestra los últimos artículos (título, link, descripción)
echo “<ul>\n”;
foreach($rs['items'] as $item) {
echo “\t<li><a href=\”$item[link]\”>”.$item['title'].”</a><br />”.$item['description'].”</li>\n”;
}
echo “</ul>\n”;
}
else {
echo “Error: No se ha encontrado el archivo RSS…\n”;
}
?>
Ver resultado(no recuperado)

Fácilmente se puede modificar el ejemplo para quitar el logotipo del sitio que nos ofrece la fuente RSS y también se pueden quitar los largos textos de las descripciones para adaptarlo a nuestra página, con nuestro estilo propio.

Nota. -
Este ejemplo NO es un ejemplo de AJAX ya que no se tratan los datos de forma asincrona sin que el flujo de información sigue cada carga de página.

This entry was posted in Desarrollo Web. Bookmark the permalink.

Deja un comentario

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>