Comprendre l'ordinateur

Comment créer un flux RSS sur mon site ?



C'est assez simple.
Un flux RSS n'est rien d'autre qu'un fichier texte avec un format particulier (en XML).
Vous pouvez donc en créer un simplement avec le Bloc-Note (même si je vous recommande quand même un éditeur de texte un peu plus évolué, comme l'excellent PSPad sous Windows).


Quelle version de RSS choisir ?

Je vous recommande le RSS 2.0 pour plusieurs raisons:


Un exemple de flux RSS simple

Un flux RSS est en réalité un fichier au format XML, avec un schéma (une structure) particulière.
Voici un exemple simple de flux RSS simple. 

Il vous suffit de sauvegarder le texte suivant dans un fichier texte que vous nommerez avec l'extension .xml (par exemple news.xml):

<?xml version="1.0" encoding="ISO-8859-1"?>
<rss version="2.0">
    <channel>
   
        <title>Mon site web</title>
        <link>http://monsiteweb.com</link>
        <description>Les news de mon site web</description>

       
        <item>
            <title>Un site web pour partager ses signets</title>
            <link>http://del.icio.us</link>
            <guid isPermaLink="true">
http://del.icio.us</guid>
            <description>Le site http://del.icio.us permet de partager vos signets et d'y accéder où que vous soyez.</description>
            <pubDate>Wed, 5 Aug 2005 19:30:00 GMT</pubDate>
        </item>

       
        <item>
            <title>Enfin un flux RSS !</title>
            <link>http://monsiteweb.com/rss.html</link>
            <guid isPermaLink="true">http://monsiteweb.com/rss.html</guid>
            <description>Un flux RSS a été installé sur mon site. Vous pouvez le consulter avec votre logiciel favori.</description>
            <pubDate>Wed, 3 Aug 2005 15:17:00 GMT</pubDate>
        </item>

       
    </channel>
</rss>


Placez ce fichier sur votre site: Il ne faut rien de plus !


En bleu, les informations sur le flux lui-même (juste après <channel>):

En vert: Ensuite viennent chacune des informations (dans chaque <item>):

Libre à vous de modifier ce modèle et d'y mettre le texte que vous voulez.
Vous devez seulement respecter l'ordre d'imbrication des balises <channel> <item> <title> etc.

Important: N'oubliez pas d'indiquer l'encoding que vous avez utilisé dans votre fichier texte. Si vous êtes sous Windows, vous avez probablement utilisé l'ISO-8859-1. Il faut alors l'indiquer dans le fichier (voir encoding=... dans la balise <?xml ...>).
Pour en savoir plus sur les charsets et l'encoding, voir cet article: http://sebsauvage.net/python/charsets_et_encoding.html (Lecture fortement recommandée !)


Comment publier le flux RSS sur mon site ?

  1. Enregistrez le document XML ci-dessus dans un fichier texte avec l'extension .xml
  2. Déposez ce fichier sur votre site web (par FTP)
  3. Indiquez à tout le monde l'URL de ce fichier.
C'est tout !

Le mieux est également de mettre un lien vers ce flux RSS sur votre page d'accueil, en utilisant par exemple le petit logo .
(Vous trouverez plusieurs tailles de ce logo sur ce site: http://www.feedicons.com/)

Vous pouvez également donner le lien de votre flux RSS à des annuaires de flux (comme NewsIsFree.com par exemple).


Note: Il est possible que votre serveur web soit mal configuré et envoie le mauvais type MIME aux navigateurs.
Vous pouvez le forcer. Par exemple si votre flux est monflux.xml, créez un fichier .htaccess contenant:

<Files monflux.xml>
AddCharset ISO-8859-1 .xml
AddType text/xml .xml
</Files>



Comment ajouter de nouvelles informations à mon flux ?

Il vous suffit d'ajouter un nouvel <item> (en rouge ci-dessous) devant les autres:

<?xml version="1.0" encoding="ISO-8859-1"?>
<rss version="2.0">
    <channel>
   
        <title>Mon site web</title>
        <link>http://monsiteweb.com</link>
        <description>Les news de mon site web</description>

     
        <item>
            <title>Sale temps !</title>
            <link>http://weather.com</link>
            <guid isPermaLink="False">Le temps qu'il fait</guid>
            <description>Il ne fait vraiment pas beau aujourd'hui.</description>
            <pubDate>Tue, 9 Aug 2005 16:20:00 GMT</pubDate>
        </item>

  
        <item>
            <title>Un site web pour partager ses signets</title>
            <link>http://del.icio.us</link>
            <guid isPermaLink="true">
http://del.icio.us</guid>
            <description>Le site http://del.icio.us permet de partager vos signets et d'y accéder où que vous soyez.</description>
            <pubDate>Wed, 5 Aug 2005 19:30:00 GMT</pubDate>
        </item>

       
        <item>
            <title>Enfin un flux RSS !</title>
            <link>http://monsiteweb.com/rss.html</link>
            <guid isPermaLink="true">http://monsiteweb.com/rss.html</guid>
            <description>Un flux RSS a été installé sur mon site. Vous pouvez le consulter avec votre logiciel favori.</description>
            <pubDate>Wed, 3 Aug 2005 15:17:00 GMT</pubDate>
        </item>

       
    </channel>
</rss>


C'est quoi, ce format de date bizarre ?

C'est le standard RFC822. La date est au format anglophone.

Exemple: Wed, 5 Aug 2005 19:30:00 GMT


Dans le format de date:

Comment vérifier si mon flux est correct ?

Il est important de vérifier si le format de votre flux est correct.
S'il n'est pas correct, il ne s'affichera pas bien dans les différents aggrégateurs de flux.

Utilisez le site web suivant: http://feedvalidator.org/ ou http://validator.w3.org/feed/



Comment voir ce que ça donne ?

Après avoir déposé le fichier sur votre site web, utilisez un aggrégateur de flux et indiquez-lui l'URL de votre fichier.
Je vous recommande de tester avec plusieurs aggrégateurs de flux.



Pourquoi est-ce que http://sebsauvage.net/rss/updates.xml affiche une belle page alors que le mien me montre de l'XML brut ?

Parceque j'ai indiqué au navigateur une feuille transformation XSLT, ce qui lui permet de transformer le fichier XML en HTML pour l'afficher.

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="updates.xslt" ?>
<rss version="2.0">
    <channel>
        ...

C'est le fichier http://sebsauvage.net/rss/updates.xslt qui indique comment transformer updates.xml en HTML. Et le navigateur le fait automatiquement.

Vous pouvez librement reprendre mon XSLT et l'adapter.  :-)

Notez que cela ne fonctionne pas dans tous les navigateurs.



Le contenu de cette page est placé sous les termes de la licence suivante : CC Attribution-Noncommercial 4.0 International
h t t p : / / s e b s a u v a g e . n e t