SPIP-Contrib

SPIP-Contrib

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

286 Plugins, 197 contribs sur SPIP-Zone, 236 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 ?

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

  • Metas +

    3 décembre – commentaires

    Améliorez l’indexation de vos articles dans les moteurs et leur affichage sur les réseaux sociaux grâce aux métadonnées Dublin Core, Open Graph et Twitter Card. Installation Activer le plugin dans le menu dédié. Dans le panel de configuration, (...)

  • Critère {mots}

    6 août 2009 – 316 commentaires

    Permettre de sélectionner facilement des objets SPIP ayant un ou des mots clefs en communs.

  • LinkCheck : vérificateur de liens

    13 février 2015 – 64 commentaires

    Ce plugin permet de chercher et tester l’ensemble des liens présents dans les objets. Vous pourrez donc en quelques clics connaître les liens brisés ou défectueux qui se sont immiscés dans le contenu de votre site SPIP. La vérification s’effectue en (...)

  • Import ICS 2 (agenda distant)

    2 août – 39 commentaires

    La version 2 du plugin « import ICS » en reprend la principale fonctionnalité, à savoir l’ajout automatique d’évènements distants dans la liste des évènements d’un site. À la différence de la première version, elle ne dépend pas du plugin « Séminaire » et est (...)

  • GIS 4

    11 août 2012 – 1286 commentaires

    Présentation et nouveautés La version 4 de GIS abandonne la libraire Mapstraction au profit de Leaflet. Cette librairie permet de s’affranchir des librairies propriétaires tout en gardant les mêmes fonctionnalités, elle propose même de nouvelles (...)

Ça spipe par là