Archive for Febrero, 2006
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§ion_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.