SPIP - Contrib

SPIP - Contrib

[ar] [en] [es] [fr] [it]

108 visiteurs en ce moment

fontsizeup fontsizedown
Accueil du site > Contribs > Interactivité, communication > Syndication > Syndication OPML > Un squelette OPML d’exportation de flux RSS
[13 commentaires]

Un squelette OPML d’exportation de flux RSS

mercredi 15 août 2007, par André Vincent

0 vote

Voici un squelette d’exportation (au format OPML) de TOUS les sites syndiqués dans SPIP

Le format OPML est le plus couramment utilisé pour échanger des listes de flux RSS. La plupart des logiciels d’agrégation ou lecteurs de nouvelles et quelques CMS comportent un module d’importation et d’exportation de flux RSS utilisant le format OPML. Le format OPML est également utilisé par nombre de sites d’agrégation de flux RSS.

Avec ce squelette, vous pouvez ainsi offrir à vos visiteurs d’importer dans le logiciel ou le CMS de leur choix TOUS vos sites syndiqués.

Installation

HTML - 675 octets
opml.html

Téléversez le fichier opml.html dans le dossier de vos squelettes.

Utilisation de base

Au choix :

  • Placez dans vos squelettes un lien sous cette forme :
    • <a href="spip.php?page=opml" title="OPML">OPML</a>
    • ou <a href="index.php?page=opml" title="OPML">OPML</a>
  • Placez dans n’importe quelle zone de texte d’un article, brève, rubrique, etc. :
    • [OPML -> spip.php?page=opml]
    • ou [OPML -> index.php?page=opml]

Exemple

- Tous les flux RSS sur Stages alternatives

Zip - 839.4 ko
Icônes OPML
PNG, SVG, PDF, EPS, AI

Vous pouvez aussi remplacer le libellé textuel par l’un des icônes du OPML Icon Project

-  OPML 1.1

Autres utilisations

Pour insérer un joli lecteur de nouvelles de tous vos sites syndiqués (gracieuseté de http://grazr.com, vous pouvez proposer à vos lecteur le code suivant à insérer sur leur site ou l’insérer vous même dans l’un de vos articles, en remplaçant « www.mon-site.org » par l’adresse URL de votre site.

Le code à insérer

  1. <div style="width:100%;">
  2.   <iframe style="height:600px;width:100%;border:0;" src="http://grazr.com/gzpanel.html?theme=sateen_blue&view=o&addbar=on&font=Trebuchet%20MS,%20Helvetica&file=http://www.mon-site.org/spip.php?page=opml">
  3.   </iframe>
  4. </div>
  5.  

Exemple

Pour aller plus loin

Le squelette peut facilement être adapté pour diffuser non pas les sites syndiqués externes, mais tous les flux ou certains flux RSS internes en provenance des rubriques, des brèves, par langues ou par catégories (mots-clés).

Le squelette pourrait sans doute aussi être développé sous forme de modèle ou de plugin.

En complément d’information

Le code complet du squelette

  1. [(#CACHE{3600})[(#HTTP_HEADER{Content-type: text/xml[; charset=(#CHARSET)]})]]<?xml version="1.0"[ encoding="(#CHARSET)"]?>
  2. <opml version="1.0">
  3. [(#REM)
  4. Documentation
  5.         http://www.scriptol.fr/xml/OPML-1.0.html
  6. Pour validation
  7.         http://feedvalidator.org/check.cgi?url=http://edu.ca.edu/spip.php?page=opml
  8.         http://www.kbcafe.com/rss/rsv.aspx?xml=http://edu.ca.edu/spip.php?page=opml
  9. ]
  10. <head>
  11.         <title>[(#NOM_SITE_SPIP|texte_backend)]</title>
  12.         <dateCreated>[(#DATE|date_822)]</dateCreated>
  13. </head>
  14. <body>
  15. <BOUCLE_syndic(SITES){tout}{syndication=oui} {par nom_site}>
  16. <outline
  17.         text="[(#NOM_SITE|texte_backend)]"
  18.         description="[(#DESCRIPTIF|supprimer_tags|texte_backend)]"
  19.         title="[(#NOM_SITE|texte_backend)]"
  20.         type="rss"
  21.         version="RSS"
  22.         htmlUrl="#URL_SITE"
  23.         <BOUCLE_lang(RUBRIQUES) {id_rubrique}>[language="(#LANG)"]</BOUCLE_lang>
  24.         xmlUrl="#URL_SYNDIC"
  25. />
  26. </BOUCLE_syndic>
  27. </body>
  28. </opml>

Spécifications (en français)

- OPML 1.0 - Specifications
- OPML 2.0 - Draft

TO DO

  • Développer un modèle pour insertion sous forme de #BALISE ou <raccourci> avec possibilité de sélection plus fine sur une ou plusieurs rubriques en particulier ou affectées d’un mot-clé, passé en paramètre.
  • Faire évoluer la contribution _importer/opml vers un plugin d’importation OPML dans SPIP.

.

Retour en haut de la page

13 Messages de forum

Voir toute la discussion

Pages 1 | 2

  • Répondre à ce message

    12 mars 20:47 , par Bionet

    Bonjour,

    j’ai repris ce script et j’y ai ajouté le rubricage qui me manquait. Le fichier est valide et sera interprété avec les rubriques dans les agrégateurs qui le supporte. Sinon il sera interprété comme une simple liste de site avec flux comme le fichier présenté dans cet article.

    http://www.biotechno.fr/Les-icones-...

  • Répondre à ce message

    28 février 07:07 , par André Vincent

    Non, cet article n’est pas obsolète, mais une petite mise à jour s’imposait ; c’est maintenant fait dans l’article et sur la zone de téléchargement.

    1. changement de version de 1.1 à 1.0 (version plus stable),
    2. suppression de l’attribut id qui n’existe pas dans les spécifications 1.0,
    3. changement de format de date pour le format RFC 822, seul format valide, selon les spécifications 1.0,
    4. ajout de liens vers les spécifications 1.0 et vers 2 site de validation des flux OPML.

    Par contre, le site de validation mentionnné dans le message de Bionet semble, lui, obsolète. Les deux sites de validation suivants sont plus récents et utiles :

  • Répondre à ce message

    27 février 22:28 , par André Vincent

    Merci, j’ai mis à jour les liens dans l’article.

  • Répondre à ce message

    26 février 19:34 , par Bionet

    Les spécifications actuelles (et en français) :
    - OPML 1.0
    - OPML 2.0

  • Répondre à ce message

    25 février 14:04 , par bionet

    Bonjour,

    je voulais savoir si cet article était obsolète où si on pouvait l’utiliser sur SPIP 2 sans trop de travail supplémentaire.

    Pour ma part j’ai pleins d’erreurs à la génération de cette liste : http://validator.opml.org/?url=http...

    De plus, il est indiqué que le format OPML 2.0 est en cours de conception alors qu’il est bien précisé sur le site que le format 2.0 est opérationnel et que le format 1.1 ne doit pas être utilisé (considérer qu’il s’agit du format 1.0).

    Je pense que je vais essayer de faire deux pages opml 2.0 et 1.0 valide reprenant la liste mais organisée par rubriques (les rubriques du site).

    bien cordialement

    patr

  • Répondre à ce message

    21 février 10:15 , par André Vincent

    Oui effectivement. C’est corrigé dans l’article et sur la zone.

  • Répondre à ce message

    18 février 22:36 , par Fil

    Il faut modifier un peu la partie language=, de manière à éviter tout problème avec un site appartenant à une rubrique dont la langue ne serait pas renseignée (ce qui m’est arrivé) :

    <BOUCLE_lang(RUBRIQUES) {id_rubrique}>[language="(#LANG)"]</BOUCLE_lang>

    Sinon, nickel

  • Répondre à ce message

    14 septembre 2007 19:05 , par André Vincent

    Bien vu. C’est corrigé, tant dans le code du présent article que sur la zone.

    Merci !

  • Répondre à ce message

    13 septembre 2007 12:26

    bonjour,

    J’ai ce code lorsque j’installe le lecteur opml

    Invalid file format Error : 2007-09-13 "fr" xmlUrl="" />

    Merci

  • Répondre à ce message

    11 septembre 2007 15:01 , par Grégoire G

    Bonjour

    Il y a un oubli dans le code. il manque un | après #DESCRIPTIF

    description="[(#DESCRIPTIFsupprimer_tags|texte_backend)]"

    Il faut écrire

    description="[(#DESCRIPTIF|supprimer_tags|texte_backend)]"

Pages 1 | 2

Répondre à cet article

Retour en haut de la page

Ça discute par ici