* Soporta los formatos RSS 2.0, RSS 1.0 y Atom 1.0.
* Todos los feeds generados son validado para el feedvalidator.
* Compatible con todos los elementos de un feed.
* Es simple, fácil de configurar y aplicar.
* Implementa apropiadamente los namespaces para diferentes versiones.
* Convierte automáticamente los formatos de fecha.
* Habilita el uso de subetiquetas y atributos.
* Es orientado a objetos, usa PHP5.
* Incluye los CDATA necesarios.
Modo de uso:
1.- Lo descargamos e incluimos el archivo FeedWriter.php en nuestro sistema:
include("FeedWriter.php");
2.- luego creamos la instancia a la clase, indicamos los datos generales del feed, incluimos los items y generamos el feed, a continuación un ejemplo debidamente comentado:
(clic para mostrar/ocultar el código)
<?php // incluimos la clase include("FeedWriter.php"); // creamos una instancia de la clase - RSS2 es una constante, puede ser RSS1 ó ATOM $Feed = new FeedWriter(RSS2); // --------- datos generales del feed ---------- // nombre del sitio $Feed->setTitle("Nombre del sitio"); // url del sitio $Feed->setLink("url del sitio"); // descripcion del sitio $Feed->setDescription("Descripción del sitio..."); // --------- datos del feed ---------- // nos conectamos a MySQL (en el caso de que ese sea tu DBMS) mysql_connect("localhost", "usuario", "password") or die('Error: al conectar..'); // seleccionamos la base de datos mysql_select_db("mi_db") or die('Error: al seleccionar la base de datos..'); // obtenemos los primeros 5 articulos $result = mysql_query("SELECT * FROM articulos LIMIT 5"); // --------- armamos el resto del feed ---------- while ($row = mysql_fetch_assoc($result)) { // hay que crear una instancia del Item $Item = $Feed->createNewItem(); // agregamos el titulo $Item->setTitle($row["titulo"]); // agregamos la url $Item->setLink($row["url"]); // agregamos la fecha de publicacion $Item->setDate($row["fecha_pub"]); // agregamos el resumen de la publicacion // podria ser el post completo, pero lo ideal es q sea un resumen $Item->setDescription($row["resumen"]); // agregamos el item $Feed->addItem($Item); } // por ultimo, generamos el Feed $Feed->genarateFeed(); ?>
El resultado algo como:
<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/">
<channel>
<title>Nombre del sitio</title>
<link>url del sitio</link>
<description><![CDATA[ descripción del sitio.. ]]></description>
<item>
<title>titulo del item</title>
<link>la url al tuto</link>
<pubDate>aqui la fecha de publicacion..</pubDate>
<description><![CDATA[ aquà irÃa la descripción..]]></description>
</item>
<!-- contenido del item ... -->
<item>
<!-- resto de los item -->
</channel>
</rss>
Referencias:
ajaxray.com
phpclasses.org
- Los comentarios están siendo moderados y serán publicados en la brevedad posible.