web-dev-qa-db-fra.com

Images dans le flux RSS

Chaque fois que je vois des images dans un flux RSS, elles sont intégrées à CDATA et non entourées de balises.

Dans mon flux, j'aimerais que les images apparaissent sans que cela se produise.

Que ce soit dans le navigateur, dans un lecteur de flux (Bloglines) ou via FeedBurner, la structure suivante n’affiche pas les images, bien qu’elle soit valide RSS. Est-ce que quelqu'un a de l'expérience avec ça?

<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> 
25
mmcglynn

Sur l'indication du colonel Sponsz, j'ai étudié:

Il n'y a pas d'étiquette d'image pour les éléments, uniquement pour le canal. Donc vous devez le faire via la balise CDATA.

15
guerda

Pour être complet: Dans RSS 2.0, vous POUVEZ avoir une seule enceinte dans un élément, conformément aux spécifications. peut être pour une seule image. Cependant, je comprends que le support parmi les agrégateurs de flux varie. Plus généralement, cela est utilisé pour des choses comme les podcasts. La norme RSS 2.0 stipule:

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

Il a trois attributs requis. url indique où se trouve le boîtier, length indique sa taille en octets et type indique son type, un type MIME standard. L'URL doit être une URL http. 

Notez que vous devez inclure la taille de l'élément, ainsi que l'URL et le type MIME. 

Cependant, comme d'autres l'ont indiqué, l'inclusion de la photo dans CDATA est beaucoup plus courante.

12
ViennaMike

Je crois que vous pouvez utiliser des éléments <media:content ....> avec un bon support de la plupart des lecteurs RSS, cela fonctionne parfaitement pour nous sur mailchimp (newsletter rss).

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

EDIT: Voici un lien en direct: https://blog.mailchimp.com/rss-to-email-enhancement-for-publishers/

4
user6605

Vous pouvez utiliser l'élément media:content ( spec ) dans item.

Assurez-vous de déclarer l'espace de noms MRSS (Media RSS) (l'attribut xmlns:media, ci-dessous) pour cet élément, s'il n'est pas déclaré pour l'ensemble du flux RSS, car il ne sera pas validé autrement. (Par exemple, WordPress prêt à l'emploi)

    <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" />

Cela peut ou non s'afficher comme vous le souhaitez; il faudrait expérimenter. L'intégration dans le contenu est ainsi simplifiée, bien que cette route soit utile avec des éléments tels que Intégration MailChimp (h/t cette réponse ) ou d'autres solutions personnalisées.

Un exemple d'implémentation pour WordPress est dans ma réponse ici .

1
D_N

Utiliser, par exemple:

<Enclosure url="http://www.scripting.com/mp3s/weatherReportSuite.mp3" length="12216320" type="audio/mpeg" />

Documentation ici

0
Adam Pery