Tutoriel RSS, description construction et utilisation d'un flux
RSS - Syndication vraiment simple
Construire et utiliser un fil RSS
Qu'est-ce que RSS?
C'est un format d'échange de données, défini en XML version 1.0. Vous pouvez délivrer des données en les intégrant dans ce format, et l'on peut recueillir des données de sources multiples dans ce format. On désigne les sources par fil ou flux RSS.
Les navigateurs récents peuvent directement lire des fichiers RSS, mais on peut aussi utiliser un logiciel spécialisé que l'on appelle lecteur RSS ou aggrégateur.
Histoire
Créé par Netscape an 1999. La première version est la 0.90. Elle est suivie par la 0.91 version, améliorée avec la contribution de la société Userland en 2000.
Apparaît en 2000 une version 1.0 définie O'Reilly, par la suite maintenue par le groupe RSS-DEV, basée sur RDF et nommée RDF Site Summary.
RSS 2.0 a été défini par Dave Winer (qui travaillait auparavant chez Userland) à l'université Harvard en 2002.
Cette page se base sur la spécification Really Simple Syndication 2.01 de Harvard.
Pourquoi utiliser RSS?
Pour recueillir l'actualité ou les informations fournies par des sites web, sous une forme exploitable par des ordinateurs. Pour l'afficher sur un site ou simplement la lire si vous êtes utilisateur final.
Et pour l'éditeur à l'origine du contenu, cela permet de faire connaître les nouvelles sur son site.
RSS, comment cela fonctionne?
Le système RSS de publication d'articles ou d'informations sur le web est très simple:
- De simples pages web, que l'on veut voir afficher sur d'autres sites.
Cet ensemble de pages provenant d'un site (ou de plusieurs) s'appelle un flux RSS. - Un fichier XML qui définit le flux RSS. Ce fichier contient pour chacune des pages en question l'adresse (URL) un titre et un résumé.
- Soit une personne qui veut lire ce flux sur son poste. Elle utilise son navigateur ou ajoute simplement le fichier RSS sur un lecteur de flux, ou aggrégateur.
- Soit un autre site web qui veut afficher ce flux. Pour cela il lui faut télécharger le fichier RSS, extraire l'addresse des pages, le titre et le résumé pour les afficher. Cela peut être accompli par un script en PHP. Quand on affiche la page du site client, le script est exécuté, il récupère le fichier RSS sur le site éditeur et il construit sur la page, une liste à partir des titres, descriptions et liens extraits du fichier RSS.
- L'internaute en cliquant sur les liens affichés se trouve redirigé sur les pages du site éditeur.
Structure d'un document RSS
C'est un fichier XML.
Le conteneur global est une balise "RSS" pour le format 2.0.
Elle contient au moins un canal, désignant un distributeur qui fournit de l'information, et qui est un site web.
Ce canal procure un certain nombre d'articles ou d'élément d'information de diverses sortes. Ils correspondent à des pages web, venant de sites quelconques (donc pas forcément le site du canal).
Comment utiliser RSS?
1 - Utilisation sur le bureau
Les navigateur permettent d'afficher les flux RSS. On peut aussi installer un logiciel lecteur RSS (aggrégateur) fonctionnant sous son système d'exploitation (Windows, Linux, Mac OS). Voir dans la section ressources. Noter qu'il en existe un dont l'interface est faite en XUL.
L'accès au contenu RSS dépend du logiciel, cela peut consister simplement à ajouter une source avec le bouton "add", elle augmentera une liste.
Le fournisseur du contenu peut moduler la façon dont il sera utilisé par les lecteurs.
2 - Utilisation sur un site web
On affiche sur une page un flux RSS, donc une liste de titres. Cliquer sur un titre donne accès à une page web sur un autre site. Les titres sont mis à jour automatiquement.
Pour que l'information soit mise à jour, il faut un script qui charge le fichier du flux sur le site éditeur, extraie les adresses des pages, et affiche la liste. Des adresses sont données en ressources.
Comment publier le contenu de son site dans un flux RSS?
Il y a plusieurs moyens de générer un flux RSS.
- Utiliser la librairie RSS de PHP, ce qui suppose une génération dynamique des pages. On utilisera un script en PHP, qui produira le code HTML affiché sur la page.
- Utiliser un outil d'extraction de texte.
1 2 3 | < font style = "vertical-align: inherit;" >< font style = "vertical-align: inherit;" >< a type = "application/rss+xml" </font></ font >< font ></ font > href="https://www.xul.fr/rss.xml">Flux RSS de cette page< font ></ font >< font style = "vertical-align: inherit;" >< font style = "vertical-align: inherit;" > </ a ></ font ></ font > |
Les flux au format Atom utilisent la valeur: "application/atom+xml".
Remplacez xul.fr par le nom de domaine de votre site.
Vocabulaire
- Feed. Littéralement "pâture" se traduit plutôt par "flux" ou "fil". Un feed est un ensemble de balises "item", chacune contenant l'adresse d'une page web.
- RDF. Voir la page RDF sur ce site.
- Syndicated. Se dit de l'information transmise par RSS, peut se traduire par "publié".
- Syndication. Cela peut se traduire par publication, auditorat, lectorat, etc. C'est la transmission du coté de l'éditeur du contenu, l'acquisition du coté du public, de l'information.
Principales balises RSS
rss. Le conteneur global.channel. Un canal. Il contient plusieurs balises descriptives, et une série de balises "item", les informations.
1 2 3 4 5 | < font style = "vertical-align: inherit;" >< font style = "vertical-align: inherit;" >< rss version = "2.0" ></ font ></ font >< font ></ font >< font style = "vertical-align: inherit;" >< font style = "vertical-align: inherit;" > < canal ></ font ></ font >< font ></ font > ...< font ></ font >< font style = "vertical-align: inherit;" >< font style = "vertical-align: inherit;" > </ canal ></ font ></ font >< font ></ font >< font style = "vertical-align: inherit;" >< font style = "vertical-align: inherit;" > </ rss ></ font ></ font > |
Les balises descriptives obligatoires du canal
- title. titre du canal, devrait contenir son nom.
- link. Adresse (URL) du site web pour ce canal.
- description. Une phrase pour décrire le canal.
- plus au moins une balise item pour le contenu.
1 2 3 4 5 6 7 8 9 10 | < rss version = "2.0" >< font ></ font > < channel >< font ></ font > < title >XUL</ title >< font ></ font > < description ></ description >< font ></ font > < item >< font ></ font > ...< font ></ font > </ item >< font ></ font > </ channel >< font ></ font > </ rss > |
Balises optionnelles pour le canal
- language La langue dans laquelle le texte est écrit.
- docs Adresse web de la documentation sur le format, donc à Harvard.
- webMaster E-mail du responsable.
- pubDate Date de publication.
- etc. Il y a d'autres options à voir dans la spécification.
Les articles du canal
Chaque balise item correspondant à une information contient les balises suivantes:
- title. Titre de l'article ou autres genre d'information.
- link. L'URL de la page.
- description. Résumé, "synopsis" de l'article.
1 2 3 4 5 | < item >< font ></ font > < title >XUL news</ title >< font ></ font > < description >...texte quelconque...</ description >< font ></ font > </ item > |
Plus quelques indications optionnelles pour l'article
- pubDate. Date de publication.
- guid. Une chaîne de caractère qui est un identifiant unique de l'item.
- category. Une catégorie à laquelle peut appartenir l'article.
- etc.
Créer votre propre flux RSS, pas à pas
Au départ un simple fichier de texte, créé avec un éditeur quelconque. Un éditeur XML étant préférable. (Voir la page "logiciels"). On l'appelera dans cet exemple: "flux.xml".
La structure générale du fichier sera la suivante:
1 2 3 4 5 6 | <? xml version = "1.0" ?>< font ></ font > < rss version = "2.0" >< font ></ font > < channel >< font ></ font > ...< font ></ font > </ channel >< font ></ font > </ rss > |
1) Définir le canal dans la balise channel
Ce sera le même pour tous vos fichiers RSS. Il doit comporter ces balises:
- title: le titre de votre site, le même que dans la balise title sur la page d'accueil.
- link: l'adresse de votre site: ex: https://www.xul.fr
- description: description de votre site en 200 caractères, ce peut être la même description que dans la méta-tag de la page d'accueil
1 2 3 4 5 | < channel >< font ></ font > < title >XUL et XML</ title >< font ></ font > < description >L'interface graphique XML etc.</ description >< font ></ font > </ channel > |
2) Ajouter une image
C'est facultatif. Créer une petite image (88x31 par exemple) au format usuel (gif, jpg, png) et placez la dans le même répertoire que ce fichier RSS.
La balise image est un élément de la balise channel
- url est l'adresse de l'image elle-même.
- link est l'adresse de la page affichée quand on clique sur l'image.
1 2 3 4 5 6 7 8 | < channel >< font ></ font > < title > </ title >< font ></ font > < link > </ link >< font ></ font > < image >< font ></ font > </ image >< font ></ font > </ channel > |
3) Ajouter un article
Un article n'est rien d'autre qu'une page Web. A partir de là, on crée une balise item contenue dans channel, avec les éléments suivants:
- title: le titre de l'article, donc de la page.
- link: l'adresse de la page.
- description: résumé de l'article en 200 caractères environ.
1 2 3 4 5 | < font style = "vertical-align: inherit;" >< font style = "vertical-align: inherit;" ><élément></ font ></ font >< font ></ font > < title >Nouvelle du jour</ title >< font ></ font >< font style = "vertical-align: inherit;" >< font style = "vertical-align: inherit;" > < description >Tout savoir sur RSS</ description >< font ></ font >< font style = "vertical-align: inherit;" >< font style = "vertical-align: inherit;" > </ item ></ font ></ font > |
4) Ajouter d'autres articles si besoin
Ajouter d'autres balises item à l'intérieur du canal.5) Uploader le fichier sur le site
Placer le fichier flux.XML sur votre site, parmi les pages web.
6) Valider le fichier
Vous pouvez utiliser le valideur indiqué dans les liens en fin de page.
7) Rendre le flux accessible
Pour cela il faut placer un bouton RSS sur la page d'accueil. En cliquant sur le bouton on doit afficher le fichier précédemment créé. ou
1 2 3 |
Si l'image ne s'affiche pas, utiliser une URL complète comme https://www.xul.fr/rss.gif.
8) Mettre à jour le flux
Pour fournir de nouveaux articles, il suffit d'ajouter des items, et de supprimer les plus anciens lorsque la taille du fichier devient trop imposante.
Exemple: le fichier complet
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | <? xml version = "1.0" ?>< font ></ font > < rss version = "2.0" >< font ></ font > < channel >< font ></ font > < title >Ajax et XML</ title >< font ></ font > < description >L'interface graphique XML etc...</ description >< font ></ font > < image >< font ></ font > </ image >< font ></ font > < item >< font ></ font > < title >Nouvelle du jour</ title >< font ></ font > < description >Tout savoir sur RSS</ description >< font ></ font > </ item >< font ></ font > < item >< font ></ font > < title >Nouvelle du lendemain</ title >< font ></ font > < description >Et tout savoir sur RDF</ description >< font ></ font > </ item >< font ></ font > </ channel >< font ></ font > </ rss > |
Vous pouvez télécharger l'exemple et l'utiliser comme point de départ pour votre propre fichier RSS, en remplaçant bien sur "xul.fr" par le nom de votre site.
Comment indiquer la présence d'un flux RSS au navigateur
Vous avez créé un flux et vous l'avez placé sur votre site web, à la racine par exemple. Il faut en informer les navigateurs lorsqu'ils affichent la page d'accueil du site (ou toutes autres pages si vous voulez). Firefox affichera l'icône dans le champ d'URL, Internet Explorer sur la barre de commandes.
Pour les activer, insérez la ligne suivante dans le code source de la page, n'importe où à l'intérieur de la section <head> </head>:
1 2 | < link rel = "alternate" type = "application/rss+xml" <font></ font > href="https://www.xul.fr/rss.xml" title="Votre titre"> |
Remplacer l'URL de l'exemple par celle de votre domaine avec le chemin et le nom du fichier RSS.
Et si le fichier est au format atom, remplacer rss+xml par atom+xml .
Spécifications et outils |
---|
Spécifications et références
- RSS 2.0. Spécification par Harvard en version française.
- RSS 1.0. Le tutoriel du format RDF Site Summary 1.0 de O'Reilly.
Outils de génération et affichage de flux RSS
- Ara Editor. Editeur de flux RSS en ligne écrit en PHP. Voir aussi Bioloide sur le même site.
- Lecteur RSS. Fonction PHP pour afficher un flux RSS sur une page Web, à partir d'un fichier local ou distant.
Commentaires
Enregistrer un commentaire
🖐 Hello,
N'hésitez pas à commenter ou vous exprimer si vous avez des trucs à dire . . .👉