SPIP-Contrib

SPIP-Contrib

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

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

  • Plugin Logo SVG : pouvoir utiliser des logos SVG

    17 octobre 2016 – commentaires

    Le SVG est un format vectoriel donc très léger et redimensionnable sans pertes, mais SPIP ne l’acceptait pas sur les logos. Ce plugin comble ce manque. Comment ça fonctionne ? Vous installez ce plugin, vous l’activez, et c’est tout. Crédits Une (...)

  • Menu animé déroulant

    16 août 2015 – 39 commentaires

    Barre de menu dynamique multi niveaux - adaptation aisée (?) des couleurs et dimensions - convient aussi aux petits écrans (mobiles).

  • Thélia

    26 juin 2007 – 939 commentaires

    Une approche basée sur l’utilisation conjointe des deux logiciels SPIP et Thélia pour la réalisation de sites de publication et de vente en ligne

  • Ferme à SPIP

    3 janvier 2008 – 140 commentaires

    Un petit article synthétique qui explique en quelques mots et captures d’écrans comment faire une « ferme à SPIP » avec le plugin "Mutualisation" à partir d’un nom de domaine principal.

  • Japibas, squelette responsive

    11 octobre 2013 – 91 commentaires

    Japibas est un squelette responsive, multilingue (français, anglais et espagnol), dont l’habillage conviendrait à un site de type blog ou webzine. Le graphisme est inspiré du template Wordpress Japibas réalisé par Jesper Johansen et distribué sous (...)