SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs sur SPIP-Zone, 277 visiteurs en ce moment

Accueil > Interactivité, échanges > Syndication > Syndication OPML > Archives Syndication OPML > Syndication - RSS 2.0 et OPML

Syndication - RSS 2.0 et OPML

13 août 2007 – par André Vincent – commentaires

1 vote

Ceci est une ARCHIVE, peut-être périmée. Vérifiez bien les compatibilités !

Modifications mineures aux fichiers backend de syndication de SPIP visant à les rendre conformes aux spécifications RSS 2.0 ainsi que l’ajout d’un élément d’information sur le sujet de l’article ou de la brève. Aussi, en option, un squelette très simple d’exportation de tous les sites syndiqués au format OPML. Le tout pouvant être ajouté à n’importe quel jeu de squelettes, sans autre modification ou ajout de fonction supplémentaire.

Ces contributions sont basées sur les fichiers de la version 1.8.2pr3. Ils reprennent certaines fonctionnnalités disponibles uniquement avec la version 1.8.2. L’installation ne nécessite aucune modification particulière ou ajout de fonction supplémentaire.

Fichiers backend.html et backend-breves.html de base

Il s’agit ici de conserver exactement les mêmes fonctionnalités que celles disponibles avec la version de distribution 1.8.2 de SPIP, en y apportant quelques changements mineurs décrits ici.

1. Conformité aux spécifications RSS 2.0

Nous passons la version des fichiers backend à la version
2.0 tout simplement parce que SPIP utilise déjà les spécifications du RSS 2.0 et non plus celles de la version 0.91. Voici, entre autre, certaines caractéristiques des spécifications de RSS 2.0 déjà exploitées par les fichiers de syndication livrés avec SPIP et qui ne font partie des spécifications de RSS 0.91.

  • des contenus <description> de plus de 500 caractères
  • un élément <enclosure> permettant de lier à un item des contenus multimédia (de type podcasting, par exemple) ou tout autre type de document joint.
  • des espaces nommées du type :
    xmlns:dc="http://purl.org/dc/elements/1.1/
  • l’élément <image> est optionnel (en 0.91 il est obligatoire).
  • l’élément <category> permettant d’identifier le sujet ou la catégorie d’un <item> (article ou brève).

Cela dit, la plupart des « parser » RSS sont assez libéraux et ne tiennent pas compte de l’information concernant la version. Donc ce n’est pas vraiment "buggant". C’est juste pour bien identifier les choses et appeler un chat un chat...

2. Validité des dates et auteurs

Les fichiers de syndication livrés par défaut avec SPIP continuent encore à systématiquement générer les 3 erreurs de validation suivantes :

  • Undefined item element : date
    <date>2005-07-30 00:00:00</date>
  • author must include an email address
    <author>Nom Auteur</author>
  • An item must not include both author and dc:creator
    <dc:creator>Nom Auteur</dc:creator>

Donc, nous allons :

  • éliminer l’élément <date>. Le format de date généré par SPIP n’est pas conforme aux spécifications RSS. Et même s’il l’était, ça entrerait en conflit avec <dc:date> - "An item must not include both date and dc:date". De plus, le format utilisé par <dc:date> (que SPIP filtre déjà tout à fait correctement) s’adapte mieux à la langue du lecteur que <date> qui interprète presque toujours la date en anglais.
  • éliminer <author> au profit de <dc:creator> pour sensiblement les mêmes raisons ainsi que pour des raisons de sécurité anti-spam.

3. Rendre le logo du site optionnel

De plus, les fichiers de syndication de la version 1.8.2 introduisent une autre erreur de validation. En l’absence de logo du site, l’élément <url> est vide. Or cet élément est obligatoire pour <image>.

Nous allons donc rendre optionnel l’élément <image>, conditionnel à l’existence de #LOGO_SITE_SPIP.

Installation

  1. Téléchargez l’archive suivante sur votre poste et décompressez.
  2. Téléversez les deux fichiers qu’elle contient dans le dossier contenant vos squelettes ou le cas échéant à la racine de SPIP.
Zip - 2.3 ko
RSS 2.0 de base
Contient les fichiers backend.html et backend-breves.html

Vérification

Vérifiez la validité de votre fil de syndication à :
-  http://feedvalidator.org/

Ajout d’un sujet à chaque item

Nous reprenons les fichiers de base précédents et ajoutons à chaque article et brève un sujet à l’aide de l’élément <category>.

Nous avons arbitrairement choisi d’utiliser le #TITRE de la rubrique mère plutôt que les mots-clés pour diverses raisons :

  • Dans SPIP, chaque article ou brève possède obligatoirement une et une seule rubrique mère.
  • Pusieurs sites n’utilisent pas de mots-clés ou les utilisent à diverses fins autres que la catégorisation des articles ou brèves.
  • Afin d’assurer une compatibilité avec un éventuel module XMLRPC (en développement ailleurs...) qui utilise aussi le #TITRE des rubriques pour classer les articles par « catégorie » ou sujet.
  • Parce que la plupart des squelettes de type « weblog » développées pour SPIP utilisent souvent la structure hiérarchique des rubriques pour mimer la structure des « catégories » ou sujets caractéristiques des carnets de type « weblog ».
  • Pour la catégorisation des sujets par mots-clés, on pourra toujours éventuellement utiliser l’élément <dc:subject>.

Installation

  1. Téléchargez l’archive suivante sur votre poste et décompressez.
  2. Téléversez les deux fichiers qu’elle contient dans le dossier contenant vos squelettes ou le cas échéant à la racine de SPIP.
Zip - 2.5 ko
RSS 2.0 + Catégories
Contient les fichiers backend.html et backend-breves.html

Un squelette OPML d’exportation de sites syndiqués

Voir article complémentaire :

En complément d’information

Références et historiques :
-  La syndication de contenu - diaporama
-  Comment faire de la veille informative ou d’opinion via Internet
-  RSS et Syndication (1)
-  RSS et Syndication (2)
-  Web sémantique et RSS
-  RSS Quick Summary (dont un comparatif RSS 0.91 et 2.0)
-  Ressources Sur RSS

Spécifications
-  Spécifications RSS 2.0 (français)
-  Spécifications RSS 2.0 (anglais)
-  Spécifications RSS 0.91 (Userland) (anglais)
-  Spécifications RSS 0.91 (Netscape) (anglais)
-  OPML 1.0 Specifications

Les agrégateurs :
Presque tous les lecteurs de nouvelles - Newsreaders et modules d’agrégation

Les lecteurs les plus populaires :

-  Sage (Multi OS - extension pour Mozilla/Firefox - Logiciel libre)
-  RSSOwl (Multi OS - Logiciel libre - CPL)
-  Feed Reader (Windows - libre - GPL)
-  Netnewswire Lite (Mac OS X - freeware)
-  Liferea (Linux/Gnome - libre - GPL)
-  Straw (Linux/Gnome - libre - GPL)

Les annuaires d’agrégation :
-  syndic8 (inscription libre)
-  News is Free

Exemples d’agrégation dans SPIP :
-  REZO
-  Sedna RSS
-  SpipFeeder
-  Brest Ouvert

Les autres contributions portant sur la syndication dans SPIP
-  Un fil RSS 2.0 et un fil ATOM 0.3
-  SpipFeeder : un agrégateur rss.
-  Fils RSS/backends mis en page avec xsl & css

Outil de validation
-  Pour valider vos fils de syndication

Dernière modification de cette page le 15 août 2007

Retour en haut de la page

Vos commentaires

  • Le 31 juillet 2007 à 17:40, par dinobib En réponse à : Syndication - OPML

    Est-ce que le squelette d’exportation en opml marche sur un spip 1.9.2.?

    quel modification faire vu le changement de .php3 en .php.

    Merci d’avance

    • Le 31 juillet 2007 à 18:07, par dinobib En réponse à : Syndication - OPML

      j’ai modifier le fichier sites_syndic.html de la maniére suivante

      #CACHE{3600}
      <?php
      $flag_preserver = true;
              @header('Content-type: text/x-opml[; charset=(#CHARSET)]');
              echo '<'.'?xml version="1.0" encoding="#CHARSET"?'.">\n";
      ?>
      <opml version="1.1">
              <head>
                      <title>[(#NOM_SITE_SPIP|texte_backend)]</title>
                      </head>
              <body>
              <BOUCLE_syndic(SITES){tout}{syndication=oui}>
                  <outline
                              text="[(#NOM_SITE|texte_backend)]"
                              description="[(#DESCRIPTIF|texte_backend)]"
                              title="[(#NOM_SITE|texte_backend)]"
                              type="rss"
                              version="RSS"
                              htmlUrl="#URL_SITE"
                              xmlUrl="#URL_SYNDIC" />
              </BOUCLE_syndic>

              </body>
      </opml>

      et ensuite insérer un lien comme ceci <a href="spip.php?page=sites_syndic">lien opml<a> mais tous ceci ne donne aucun résultat.
      Comment peut on modifier tout cela pour que cela marche avec spip 1.9.2

    • Le 13 août 2007 à 11:14, par André Vincent En réponse à : Syndication - OPML

      Les choses sont devenues beaucoup plus simple avec SPIP 1.9.2.

      • Téléchargez et placez dans votre dossier /squelettes/ le fichier suivant :
      • Vous appelez le fichier OPML dans vos squelettes par :
        <a href="spip.php?page=opml" title="OPML">OPML</a>
      • Dans les zones textes de vos articles, brèves, rubriques, etc... vous insérez :
        [OPML->spip.php?page=opml]

      Exemple :
      www.stages.alternatives.ca/spip.php...

    Répondre à ce message

  • Le 23 novembre 2005 à 12:25, par Fred En réponse à : Syndication - RSS 2.0 et OPML

    Dans le fichier : backend.html

    Il faut changer : BOUCLE_podcast(DOCUMENTS) (id_article) (mode=document)

    par : BOUCLE_podcast(DOCUMENTS)(id_article) (mode=document) (0,1)

    Sinon le flux RSS ne peut être validé.

    Fred

    • Le 30 décembre 2005 à 12:30, par André Vincent En réponse à : Syndication - RSS 2.0 et OPML

      Oui, tout à fait exact. Merci.

      Et en passant, tous les problèmes signalés dans le présent article ont été corrigés dans la version en développement (1.9) en plus d’apporter un contenu riche pour les lecteurs de nouvelles éclairés.

      André Vincent

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?
  • [Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Mailshot

    16 janvier 2013 – 248 commentaires

    Ce plugin prend en charge l’envoi en nombre d’info-lettres par email. Mailshot permet l’envoi en nombre d’emails au moyen d’un SMTP (ou d’un service externe) dédié à cet effet. Il permet de limiter la cadence d’envoi. Enfin, ce plugin implémente la (...)

  • Plugin Download Dump

    26 décembre 2007 – 25 commentaires

    Plugin qui permet de télécharger la sauvegarde SPIP de la base de donnée, depuis l’espace privé sans utiliser de client ftp.

  • Cycle2

    7 août 2014 – 99 commentaires

    La seconde version de la librairie Javascript « jQuery Cycle », qui permet de produire des diaporamas, se nomme « Cycle2 » : http://jquery.malsup.com/cycle2/. Voici cette nouvelle librairie mise en plugin pour SPIP. Si vous utilisez déjà « jQuery (...)

  • Partageur

    29 janvier 2011 – 47 commentaires

    Permet de recopier facilement des articles d’un site SPIP partageur à l’autre. Ce plugin est encore en version beta. Les retours et critiques sont les bienvenus ... Présentation Ce plugin est né d’un besoin de partager des articles entre sites (...)

  • Une loupe pour vos vignettes

    9 décembre 2005 – commentaires

    Voici un petit exemple de comment utiliser un javascript pour ajouter une loupe sur vos vignettes de documents.

Ça spipe par là