plugin modificar editar configurar como php rss rdf atom-feed

php - modificar - rss import



La mejor lib/clase PHP para generar RSS/Atom (5)

¿Realmente necesitas una biblioteca? Elija el formato y simplemente siga sus especificaciones para generar un XML válido.

Aquí hay un tutorial para comenzar.

Tengo que producir un feed RSS / Atom en varias aplicaciones, y quiero conocer una buena biblioteca o clase que sea capaz de producir ambos y que ya maneje todos los problemas comunes.

Por ejemplo, el que utilicé durante años no da el formato correcto para la fecha, por lo que mi feed no está bien manejado por varios agregadores.

Actualización: ¿Por qué estoy buscando una biblioteca? Porque el que utilicé durante años, que había pirateado un par de veces, tiene un pequeño problema. Tal vez una especificación no se está siguiendo correctamente.

¿Por qué mi fuente RSS duplica algunas entradas?


Hmmm, IMO, a menos que quieras envolventes, ambos formatos son lo suficientemente fáciles de crear sin ninguna clase. Por ejemplo, para las fuentes RSS de un sitio web que administro, simplemente escribí una pequeña plantilla Smarty, y funciona bastante bien.


PHP Universal Feed Generator es una buena respuesta. Solo tenía que modificar el código de acuerdo con un comentario en la página web para manejar correctamente los caracteres franceses.

http://www.ajaxray.com/blog/2008/03/08/php-universal-feed-generator-supports-rss-10-rss-20-and-atom/#comment-341

Al igual que dice Kereste (1. de junio), FeedWrite genera problemas con algunos caracteres del inglés utf-8 como ä etc., esto se debe a que xml solo conoce 5 entidades (&, ", '',). Así que cambié la línea 298 en el código fuente a

$ nodeText. = (in_array ($ tagName, $ this-> CDATAEncoding))? $ tagContent: str_replace (array (''&'', ''"''," ''","), array ('' & '','' "'','' '''', ''<'', ''>''), $ tagContent);

para evitar la conversión de caracteres en entidades xml incorrectas.


Para conjuntos de caracteres no ingleses, eche un vistazo a las funciones de PHP htmlentities: http://php.net/manual/en/function.htmlentities.php

Acabo de agregar para apoyar el juego de caracteres croata:

$nodeText .= (in_array($tagName, $this->CDATAEncoding))? $tagContent : htmlentities($tagContent, ENT_COMPAT, ''UTF-8'');


El PHP Universal Feed Generator parece ser exactamente lo que buscas: tiene una forma simple basada en OO de declarar un nuevo feed y enviarlo a tu especificación deseada.

También tiene incorporadas las conversiones de formato de fecha como una de sus características.

caracteristicas:

  • Genera feeds RSS 1.0, RSS 2.0 y ATOM 1.0
  • Todos los feeds están validados por el validador de feeds.
  • Implementa espacios de nombres apropiados para diferentes versiones.
  • Convierte automáticamente formatos de fecha.
  • Genera UUID para fuentes de ATOM.
  • Maneja la codificación CDATA para las etiquetas requeridas.

Versiones compatibles:

  • RSS 1.0 (que oficialmente se obsoleta RSS 0.90)
  • RSS 2.0 (que oficialmente obsoleta RSS 0.91, 0.92, 0.93 y 0.94)
  • ATOM 1.0