2009-01-27 25 views
24

Cada vez que veo imágenes en una fuente RSS, están incrustadas en CDATA, en lugar de rodeadas de etiquetas.Imágenes en la fuente RSS

En mi alimentación, me gustaría que aparezcan las imágenes sin hacer eso.

Ya sea en el navegador o en un lector de feeds (Bloglines) oa través de FeedBurner, la siguiente estructura no muestra imágenes, aunque es un RSS válido. ¿Alguien tiene experiencia con esto?

<item> 
<category>Viewbook</category> 
<title>Widget</title> 
<description>Learn more about our widgets.</description> 
<link>http://www.widget.com/Default.aspx</link> 
<image> 
<url>http://www.widget.com/images/thumb.gif</url> 
<title>Widget</title> 
<link>http://www.widget.com/Default.aspx</link> 
<description>Learn more about our widgets.</description> 
</image> 
</item> 

Respuesta

15

En pista Colonol Sponsz', que investigó:

No hay ninguna etiqueta de la imagen para los artículos, sólo para el canal. Entonces tiene para hacerlo a través de la etiqueta CDATA.

+0

Además, consulte la extensión de la especificación de Media RSS a RSS, también: http://video.search.yahoo.com/mrss – danmactough

+0

Dependiendo de lo que necesite, existe. Ver mi respuesta a continuación: https://stackoverflow.com/a/45870352/241244 –

+0

Hay una etiqueta de recinto. – ram4nd

-1

Funciona con una etiqueta separada, como usted dijo. El problema es la especificación de la versión 2.0.

Lo sé, hay un lector de alimentación que suprime las imágenes por razones de ancho de banda.

Fuente: Wikipedia RSS specification 2.0 través

+2

Eso solo le da una imagen para el feed, como un logotipo: es un elemento secundario de , no . –

+0

Así que no se supone que haya imágenes en los elementos a través de la etiqueta de la imagen. – guerda

11

Para completar: en RSS 2.0, PUEDE tener un solo recinto dentro de un elemento, que según la especificación. puede ser para una sola imagen. Sin embargo, entiendo que el apoyo entre los agregadores de feeds varía. Más típicamente esto se usa para cosas como podcasts. Los estados RSS 2.0 estándar:

<enclosure> is an optional sub-element of <item>. 

Tiene tres atributos requeridos. url dice dónde se encuentra el gabinete, la longitud indica qué tan grande es en bytes y el tipo dice cuál es su tipo, un tipo MIME estándar. La url debe ser una url http.

Tenga en cuenta que debe incluir el tamaño del elemento, junto con la URL y el tipo de mime.

Sin embargo, como otros indicaron, incluir las imágenes en CDATA es mucho más común.

4

Creo que puede usar <media:content ....> elementos con buen soporte por la mayoría de los lectores de rss, está funcionando sin problemas para nosotros en mailchimp (rss al boletín de correo electrónico).

Ver http://kb.mailchimp.com/article/how-can-i-format-the-image-content-in-my-rss-to-email-campaigns

EDIT: He aquí un enlace directo: https://blog.mailchimp.com/rss-to-email-enhancement-for-publishers/

+0

Lamentablemente, este enlace ya no es válido en MailChimp – Berto

+0

Su enlace no está disponible. –

+0

El enlace ahora funciona. –

1

Usted puede utilizar el elemento media:content (spec) dentro item.

Asegúrese de declarar el espacio de nombres MRSS (Media RSS) (el atributo xmlns:media, a continuación) para este elemento, si no se declara para toda la fuente RSS, ya que no validará lo contrario. (Por ejemplo, fuera de la caja de WordPress.)

<media:content 
    xmlns:media="http://search.yahoo.com/mrss/" 
    url="http://www.widget.com/images/thumb.gif" 
    medium="image" 
    type="image/jpeg" 
    width="150" 
    height="150" /> 

Esto puede o no puede aparecer como desea; tendrías que experimentar Incrustar en el contenido es de esa manera más simple, aunque esta ruta ayuda con cosas como MailChimp integration (h/t this answer) u otras soluciones personalizadas.

Implementación de ejemplo for WordPress is in my answer here.