| 09 de septiembre de 2010 | ¡Bienvenid@! / Welcome! | Añadir a favoritos |
|
|
|
Cómo crear los feeds para tu web (RSS 2.0) con php21 de julio de 2008 - 7303 lecturas - 13 comentarios - Categorías: Diseño web, HTML, PHP. - Posteado por David Bayón. ![]() Si no sabes qué son los feeds, tal vez lo mejor sea que comiences haciendo clic aquí, para salir de dudas. La mayoría de herramientas para la gestión de blogs (wordpress, blogger...) crean los feeds de forma automática, pero... ¿qué ocurre cuando queremos hacer los feeds de una web creada "a mano", que no utilice estás utilidades? Un portal donde se publiquen periodicamente noticias, por ejemplo, o un blog programado por uno mismo (como es mi caso). A continuación explico cómo llevarlo a cabo fácilmente. Tenemos que conseguir este resultado (puedes hacer clic derecho y seleccionar ver el código fuente), para lo que es necesario un archivo con el siguiente aspecto (sólo habrá que modificar lo que aparece en color verde). Justo a continuación explico cómo conseguirlo. <?xml version="1.0" encoding="iso-8859-1"?> <title><![CDATA[título del elemento]]></title> </item> (...Con tantos items como queramos mostrar...) </rss> Para realizarlo debemos seguir los siguientes pasos: 1) Crear un archivo php vacío, por ejemplo rss.php , que lo utilizaremos para generar los feeds. 2) Lo rellenamos con el siguiente contenido, modificando lo que aparece en letra verde negrita por la información de tu proyecto concreto: <?php header("Content-Type: application/rss+xml");
?> <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"> </channel> </rss> 3) En la zona señalada anteriormente con marcas de comentario (/* ... */) debemos hacer lo siguiente: Nota: Todas las funciones podemos introducirlas en un archivo denominado funciones_auxiliares.php 3.1) Nos conectamos a la base de datos: include ("funciones_auxiliares.php"); 3.2) Obtenemos el contenido que vamos a mostrar en los items de la base de datos y lo introducimos en un array: $elementos = DevuelveElementosRSS($link); 3.3) Le damos el formato adecuado mediante un bucle for: for ($bb=0;$bb<100;$bb=$bb+4){ 4) Puedes ver los dos archivos finales en estos enlaces: rss.php y funciones_auxiliares.php 5) Para que aparezca en la barra del navegador el icono de que tu web soporta feeds rss (ver imagen) debes incluir la siguiente línea en negrita en la cabecera (head) del index:
<head> Si tienes alguna duda ¡recuerda que puedes plantearla en los comentarios de este post! ;) Nuevo comentario: Comentarios anteriores: Autor: Marian Fecha: 18/12/2009 (09:07) Comentario: Hola, muy muy muy buen post. Lo he puesto en práctica y funciona todo perfecto, pero no puedo acceder al archivo "funciones_auxiliares.php" desde el link de esta página, por lo que no consigo que me aparezca la información.¿Qué funciones se necesitan? ¿Hay otra manera de descargarse el archivo? Muchas gracias por explicarlo todo tan bien. Saludos. Autor: Tere Fecha: 27/11/2009 (20:38) Comentario: Hola, excelente feed, me funciona bien, solo quiero saber como le haces para poner el favicon en tu rss porque yo no logro encontrar como hacerlo. Mil gracias. Autor: Bruno Fecha: 27/9/2009 (20:57) Comentario: Hola me parecio un excelente post, ahora mi siguiente pregunta es como puedo crear feeds automaticos reemplazando las fechas de mis post por fechas mas actuales o en el caso de exportar mi base de datos en xml y automatizar esa tarea con php. Saludos y desde ya muchas gracias Autor: Aneury Gonzalez Fecha: 28/8/2009 (20:57) Comentario: saludos desde Rep. Dominicana muchas gracias, me funciono a la perfeccion solo con la fecha tengo problema. Me aparece una fecha asi jueves 1 enero de 1970 si puedes me ayudas a resolverlo. Gracias Mil gracias... Autor: Ramiro Fecha: 14/8/2009 (21:33) Comentario: Al Igual que David me he encontrado con el mismo problema, dentro de el TAG description existe texto y un TAG IMG de html. Existe alguna forma de individualizarlos? He hecho funciones y pude sacar las imagenes, pero no el texto. Si quieres te las subo. Muy bueno el articulo! =) Autor: Fernando Plascencia Fecha: 26/7/2009 (19:48) Comentario: Ayuda!!! Hahaha Soy un novato webmaster y necesito toda la ayuda posible por favor!! No entendi muy bien el articulo aunque se que es lo mas corto y facil posible RinconDelChemo@hotmail.com saludos! Autor: Nicolas Fecha: 19/3/2009 (19:16) Comentario: Hola soy Nicolás de Uruguay y me sirvio mucho tu articulo. te felicito por el blog saludos!! garcias Autor: David Bayón Fecha: 21/1/2009 (18:36) Comentario: zetero, ¿en qué LÍNEAS te da el error exactamente? ¿Estás seguro de que obtienes correctamente los elementos de tu base de datos? Si no eres un poco más riguroso en tus consultas no te puedo ayudar. Un saludo. Autor: zetero Fecha: 21/1/2009 (15:45) Comentario: oe men , me tira error el codigo de rss.php lo stoy editando en el dreamweaver y me webea q el rss y el chanel no estan cerrados, y tambien cuando "se emprimen los ITEMs" echo(" no cacho q vola????????????????????? ayuda porfa Autor: zertero Fecha: 21/1/2009 (14:41) Comentario: al pasarlo a algun editor (dreamweaver) tira error en codigo....... , no el codigo dentro de este.(marca como error en el codigo escrito a continuacion) ???? no me funciona .................. ............................. Autor: nagato Fecha: 16/12/2008 (12:54) Comentario: necesito ayuda para hacer esto, yo estube haciendo estos pasos, pero en el paso 3 me trabo, nose como hacerlo, alguien me explica? mi mail es josem_cler@hotmail.com Autor: David Bayón Fecha: 15/10/2008 (18:20) Comentario: David, Por lo que me cuentas tu problema se encuentra en la lectura de los feeds y no en la creación de los mismos, que es de lo que trata este post. Ese es un tema con el que todavía no he podido ponerme, por falta de tiempo, luego aún no puedo ayudarte. Tengo pendiente realizar un artículo sobre la lectura de feeds desde php. Te invito a que vuelvas a revisar mi blog en los próximos días. Un saludo! Autor: David Fecha: 15/10/2008 (09:47) Comentario: Hola, tengo una duda a la hora de extraer la información. Cuando leo el tag description me encuentro que pueden haber tags de imágenes pero al extraer la información con el simplexml_load_file() se carga el tag img y los que haya. ¿Sabes alguna manera de poder mantener los tags, sobretodo los img? Muchas gracias |
Si esta información te ha parecido interesante, por favor, considera la opción de realizar una donación ;)
Últimos Comentarios
|
|
|
Esta obra es propiedad de David Bayón Esporrín y está bajo una licencia de Creative Commons. Se puede reproducir el contenido citando la fuente y colocando un enlace en un lugar visible a su ubicación original en DavidBayon.net. |