SPIP-Contrib

SPIP-Contrib

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

278 Plugins, 195 contribs sur SPIP-Zone, 62 visiteurs en ce moment

Accueil > Administration et BDD > Import-Export > SPIP2SPIP > Spip2Spip

Spip2Spip

Version Plugin

21 février 2008 – par erational – 104 commentaires

18 votes

Spip2spip permet de synchroniser le contenu de plusieurs sites SPIP entre eux en étendant le principe de la syndication thématique. Les articles d’un SPIP sont récopiés d’un site à l’autre en conservant leur formatage original.

Fonctionnalités

Spip2spip permet à des sites Spip qui ont des thématiques en commun de s’échanger directement les articles au format Spip.

A la différence d’une simple syndication, l’article va être importé en tant qu’article dans la rubrique du site destination. Cette article importé sera donc éditable et conservera ses raccourcis et le maximum d’informations (auteurs, pièces jointes, mots-clés ....)

Téléchargement et installation

  • Activer le plugin dans le menu habituel.
  • L’activation du plugin crée automatique le groupe de mots-clés -spip2spip- qui faudra compléter
  • N’oubliez pas non plus de renseigner les sites avec lesquels vous voulez importer des informations en les ajoutant dans le menu édition > spip2spip

Paramétrage du plugin

Avec CFG, vous pouvez définir vos options d’import :

  • Quel est le statut des articles à importer : proposé ou publier ?
  • Faut-il citer l’adresse d’où provient l’article ?
  • Faut-il alerter un admin par email à chaque syndication ?
  • Faut-il importer / exporter les mots-clés des articles et de ses événements ?
  • Faut-il créer les mots-clés dans un groupé donné ou ré-créer les groupes de mots-clés du site d’origine ?

Principe général

spip2spip est une syndication qui est basée sur un groupe de mots-clés commun appelé - spip2spip -

Chaque mot-clé de ce groupe sert à désigner une thématique donnée :

  • créer un mot clé dans ce groupe permet de créer un canal thématique
  • attribuer ce mot-clé à vos articles pour le diffuser aux autres sites
  • attribuer ce mot-clé à une rubrique pour importer les articles des autres sites

Les sites recopient les articles entre eux grâce au cron :

  • le formatage des articles spip des articles est conservé (raccourcis typographiques, saut à la ligne, insertion des images et documents ....)
  • citation automatiquement la source (url de l’article d’origine)
  • reprise de la licence (voir contribution licence)
  • création de l’auteur si celui n’est pas présent le site SPIP cible.
  • les images et documents sont convertis en documents distants
  • les événements liés à l’article si vous utilisez le plugin Agenda 2.0
  • logo de l’article version 2.3
  • langues, liens de traduction et balises <multi> version 2.3
  • mots-clés de l’article et de ses événements version 2.3

Diffuser de l’information

  1. Aller dans le groupe de mots-clés -spip2spip-
  2. Dans ce groupe, créer un mot-clé par chaîne thématique que vous voulez diffuser : sport, informatique, oenologie, ...
  3. Attribuer ces mots-clés aux articles concernés.

Cela permet à votre site propose ces articles à la syndication spip2spip via l’adresse reservée :
Flux simple

Flux complet avec les événements

S’abonner à une chaîne d’information

Je vais maintenant m’abonner à des sites amis pour recopier automatique les articles qu’il propose

étape 1 : inscrire les sites amis

Je vais inscrire le flux spip2spip d’un site ami

Exemple : Je m’abonne au flux spip2spip de
@-brest

étape 2 : s’abonner à un canal thématique

Je me suis abonné à un site, il faut maintenant choisir quel canal thématique m’intéresse.

J’observe donc le flux du site ami

Exemple : Ce flux XML propose plusieurs « chaînes thématiques » :

  • a-brest-B pour les articles @-brest concernant la bretagne
  • a-brest-F pour les articles @-brest concernant la technologie
  • ...

Je décide de m’abonner à la « chaîne thématique »a-brest-B.

  1. Je crée dans la mot-clé a-brest-B dans le groupe de mots-clés -spip2spip-
  2. J’attribue ce mot-clé à la rubrique dans lequel je veux que les articles distants soient recopiés.

La synchronisation

La syndication se fait automatiquement grâce au cron.
Vous pouvez aussi forcer la syndication manuellement depuis
l’interface privée.

Le plugin examine alors tous les articles proposés et leur chaîne thématique. Si un article correspond à une chaine auquel vous vous êtes abonné, il importe l’article dans la rubrique sur lequel vous avez placé le mot-clé de cette chaîne thématique.

Astuces

Si vous voulez masquer l’affichage du groupe de mots-clés -spip2spip-, vous pouvez utiliser la boucle

  1. <BOUCLE_listemot(MOTS){id_article}{type!==^[-]}>....</BOUCLE_listemot>


Alternative pour masquer le groupe -spip2spip : utiliser le critère doublons

  1. <BOUCLE_mot_cache(MOTS){type=- spip2spip -}{doublons spip2spip}> </BOUCLE_mot_cache>
  2. <BOUCLE_listemot(MOTS){id_article}{doublons spip2spip}>....</BOUCLE_listemot>

Astuces (bis)

Spip2spip version 2.3 ajoute 2 champs supplémentaires à la table spip_articles qui peuvent être exploités éventuellement dans un squelette dans une boucle ARTICLES

  • #S2S_URL l’adresse de l’article d’origine
  • #S2S_URL_TRAD l’adresse de la traduction de l’article d’origine

Astuces (ter)

A l’import, Spip2spip adopte le comportement par défaut de Spip lors de l’import de données externes : le filtre textebrut s’applique sur tous les champs pour empécher les injections de HTML, Javascript, XSS ....
Si vous désirez quand même (à vos risques et périls), importer du HTML brut, ajouter dans votre fichier config/mes_options.php

  1. define('_SPIP2SPIP_IMPORT_HTML', true);

Evolutions

version 3 Février 2013 Version SPIP 3
version 2.3 Juillet 2010 Gestion des liens de traduction
Ajout des champs s2s_url, s2s_url_trad à la table spip_articles
support des balises <multi>
version 2.2 Juillet 2010 Import/export des mots-clés des articles et événements
flux version 1.8
version 2.1 Mai 2009 Meilleure gestion des retours à la ligne (flux version 1.7)
version 2.0 Janvier 2009 Sortie de la version compatible SPIP 2
Abandon du mode synchronisation
version 1.7 Mai 2008 Intégration de cfg
version 1.6 Mai 2008 Intégration des objets événements (plugin agenda)
version 1.5 Février 2008 Sortie la version plugin

Alternative

Voir en ligne : http://plugins.spip.net/spip2spip

Retour en haut de la page

Vos commentaires

  • Le 12 avril à 18:11, par Teddy Payet En réponse à : Spip2Spip

    Bonjour,

    Comment ce plugin gère-t-il les doublons ? Exemple : un auteur (même orthographe de nom) se trouve sur 2 sites que j’importe grâce à ce plugin sur un « portail ». Comment spip2spip va-til réagir ?

    Répondre à ce message

  • Le 29 mars à 10:43, par Benoa En réponse à : Spip2Spip

    Bonjour,

    J’ai installer le plugin sur 2 sites (spip 3.0.5) en suivants la procédure. Sur le site importateur, lorsque j’inscrit l’adresse du flux du site exportateur, j’ai le message suivant :
    Rapport de syndication :
    Erreur : Impossible de charger le flux

    Il me semble que le flux est pourtant bon : http://www.radio-calade.fr/site/spip.php?page=backend-spip2spip

    Avez vous une idée de ce que j’ai pu mal faire ?

    Répondre à ce message

  • Le 18 décembre 2012 à 18:31, par ECO En réponse à : Spip2Spip

    Bonjour à tous,

    Une MàJ pour SPIP 3.0 est-elle prévue svp ?

    a+

    • Le 19 décembre 2012 à 00:56, par erational En réponse à : Spip2Spip

      Sans doute en 2013 si je trouve le temps ou on me le commande expressément

      Pour infos, je viens de migrer Partageur qui partage les fonctions de parsing de SPIP2SPIP

    • Le 19 décembre 2012 à 17:38, par ECO En réponse à : Spip2Spip

      Ah ! Merci erational.

      Par contre, je ne comprends pas bien la différence entre spip2spip et Partageur.

    • Le 19 décembre 2012 à 17:39, par ECO En réponse à : Spip2Spip

      Au temps pour moi. Il suffisait d’ouvrir les yeux :-)

      Contrairement aux plugins SPIP2SPIP, Flux RSS en articles le principe d’import n’est pas basé sur la syndication automatique mais sur une sélection manuelle. Une fois installé, le plugin permet de « piocher » dans les articles des bases documentaires que l’on a préalablement inscrites.

    • Le 14 février à 03:43, par erational En réponse à : Spip2Spip

      SPIP2SPIP est maintenant disponible pour SPIP 3.
      L’interface a été entièrement reprise côté backoffice pour plus de performance et d’ergonomie.

      Enjoy ^_^

    • Le 15 février à 10:52, par ECO En réponse à : Spip2Spip

      Génial !!

      Merci beaucoup :-)

    Répondre à ce message

  • Le 1er juin 2012 à 09:42, par pamillet En réponse à : Spip2Spip

    peut-être un élément de réponse aux questions précédentes sur les articles syndiqués qui n’apparaissent pas...

    j’utilisais spip2spip depuis un moment, or depuis... un an ? ca ne fonctionne plus. les articles sont bien importés dans le site de destination, mais n’apparaissent pas sur le site.

    j’ai pris le temps (au bout d’un certain temps !) de regarder dans la base de donnée, et je me suis aperçu que c’était le champ « secteur » qui était resté à 0.... résultat, dès que le squelette met un critère sur le secteur, les articles syndiqués ne sont pas pris dans les boucles articles...
    j’ai corrigé à la main dans la base de donnée, et l’article apparait...

    je n’ai par contre par cherché dans le code pourquoi ce champ n’était pas mis à jour...
    je ne sais pas si ca dépend d’une configuration particulière..

    en espérant que ce soit corrigé dans une prochaine version...bon courage !

    • Le 1er juillet 2012 à 23:06, par pamillet En réponse à : Spip2Spip

      je me suis lancé dans la lecture du code, ne voyant pas venir de réaction...
      si je comprends bien la fonction qui récupère l’id de secteur et que je copie dessous, prend la rubrique parent de la rubrique de l’article comme secteur...

      ce qui me semble incorrect... si une rubrique a comme parent 0, elle est son propre secteur... et de toute façon, il y a déja un champ « secteur » dans la table rubriques... Pourquoi ne pas le reprendre ?

      version actuelle de la fonction....

              // recupère id du secteur
      342        function spip2spip_get_id_secteur($id_rubrique) {
      343           if ($row = sql_fetsel("id_parent","spip_rubriques","id_rubrique=$id_rubrique"))
      344                       return $row['id_parent'];
      345           return 0;
      346        }

      version suggérée... sachant que je ne vois pas de cas ou le fecth renverrait une valeur nulle sur idsecteur...

              // recupère id du secteur
      342        function spip2spip_get_id_secteur($id_rubrique) {
      343           if ($row = sql_fetsel("id_secteur","spip_rubriques","id_rubrique=$id_rubrique"))
      344                       return $row['id_secteur'];
      345           return 0;
      346        }

      je n’ose me lancer dans la modif en direct... peut-être une confirmation d’un développeur spip ?

      pam

    • Le 1er juillet 2012 à 23:47, par erational En réponse à : Spip2Spip

      oui cela me semble correct, n’hésite pas à commiter. merci.

    • Le 25 septembre 2012 à 07:58, par pamillet En réponse à : Spip2Spip

      je n’utilise pas de svn ne faisant pas de développement,
      et j’avoue que je n’ai pas trouvé comment commiter..simplement....

      donc je n’ai fait la modif que sur mon serveur...

      le fichier concerné est spiptospip_fonctions.php à la racine du plugin...

      pam

    • Le 25 septembre 2012 à 08:49, par erational En réponse à : Spip2Spip

      voilà c’est comité 66205. Merci

    Répondre à ce message

  • Le 24 mars 2012 à 01:33, par Bitin En réponse à : Spip2Spip

    Personne n’a rencontré de problème avec le plugin « speed syndic » ??
    Merci pour vos retours, le cas échéant.
    Spipement,
    Bitin.

    Répondre à ce message

  • Le 3 février 2012 à 12:33, par Paname En réponse à : Spip2Spip

    Bonjour,
    J’ai également de mon côté quelques problèmes. J’ai suivi à la lettre le guide ci-dessus et le site qui importe visualise bien les articles à importer.
    Ne voyant rien venir automatiquement je suis allé voir le lien « syndiquer manuellement » de spip2spip (dans le site qui importe).
    Il m’indique bien l’article à importer, mais le lien en dessous « Consulter l’article importé » a cette forme :

    http://www.monsitequiimporte.com/ecrire/?exec=articles&id_article=

    Spip2spip n’a apparemment généré aucun article (rien après le « = »). Il semble bloquer à ce stade, non ?
    Merci pour votre aide

    • Le 3 février 2012 à 15:48, par Paname En réponse à : Spip2Spip

      Rebonjour,

      Petit ajout, je reçois parfaitement par mail (en 36000 exemplaires) le message automatique qui m’indique la syndication...

      Contenu du mail

      Titre de mon article spip
      Consulter l'article importé:
      http://www.marseille-premium.com/ecrire/?exec=articles&id_article=

      Par contre, toujours pas de lien complet et d’articles créés sur mon spip qui importe...

      Merci pour votre aide

    Répondre à ce message

  • Le 20 novembre 2011 à 19:28, par Joseph Tux En réponse à : Spip2Spip

    Bonjour,

    j’envisage de fermer un site ( l’ancien site ) et j’aimerais auparavant l’insérer dans mon autre site ( nouveau site ), comme archive, par exemple dans une rubrique dédiée du nouveau site.

    Ce site est assez gros, et je n’ imagine pas marquer chaque rubrique et chaque article 1 par 1

    Est-ce que ce plugin , éventuellement modifié, pourrait réaliser cette fusion ?

    ( Je précise que, utilisateur satisfait de SPIP, je suis néanmoins incompétent pour modifier moi même sérieusement un plugin )

    Peut-être une autre méthode en jouant directement avec la base de donnée ( mais je suis tout aussi incompétent avec MySQL )

    Je n’ai trouvé aucune contribution ni même un témoignage d’une telle manoeuvre.

    La fermeture de l’ancien site est programmée pour Mars 2012.

    • Le 21 novembre 2011 à 01:03, par erational En réponse à : Spip2Spip

      Bonjour joseph,

      Dans ton cas, il me semble qu’il est inutile d’utiliser spip2spip (c’est faisable, il faudrait juste modifier la page backend-spip2spip en indiquant un age très vieux) mais utiliser tout simplement la fonction native de Spip qui permet de fusionner 2 deux sites :

      Voici la méthode

      1. Sauvegarder au préalable chacun des sites pour être sur de pour revenir en arrière en cas de problème
      2. Sur l’ancien site, créer une rubrique archives et y déplacer toute l’arborescence.
      3. Exporter l’ancien site (en créant un dump) et en sauvegardant le dossier IMG (on peut affiner l’export en sélectionnant uniquement les tables nécessaires)
      4. Sur le nouveau site, importer ce dump en prenant l’option de fusionner les 2 bases (au lieu de l’option par défaut qui est en général de l’écraser).

      Bonne chance !

    • Le 22 novembre 2011 à 15:49, par Joseph Tux En réponse à : Spip2Spip

      Limpide !
      Merci erational.

    Répondre à ce message

  • Le 18 août 2011 à 05:34, par Med_ En réponse à : Spip2Spip

    Salut,

    Depuis quelques mois, SPIP2SPIP ne fonctionne étrangement plus sur un spip à jour (plugins également).

    Le problème :
    -  côté émetteur tout semble ok : le backend XML est bien rempli avec les articles qui doivent être partagés.
    -  côté récepteur, échec : la syndication semble bien se faire périodiquement, mais ne trouve rien. Si je clique sur « syndiquer manuellement », rien non plus. Et si je clique enfin sur « flux », pour vérifier que mon site récepteur regarde bien le bon backend, je visualise bien le backend XML distant rempli avec les articles à importer...

    D’où peut venir ce comportement ? Pourquoi le site récepteur ne veut pas importer les articles présents dans le backend ?
    Ça m’ennuie depuis un moment et je ne trouve pas.

    Merci,
    Med.

    • Le 14 septembre 2011 à 08:07, par erational En réponse à : Spip2Spip

      bonjour,

      je viens de vérifier le fonctionnement de SPIP2SPIP avec les versions à jour du plugin et SPIP 2.1.10.

      cela fonctionnement parfaitement !
      par exemple : avec ce flux et le mot-clé SPIP2SPIP a-brest-B que j’ai attribué à une rubrique.

      Vérifier peut-être que la mise à jour de base s’est bien faite (présence des champs s2s_url, s2s_url_trad sur la table spip_articles) ou que vos articles n’ont pas déjà été importés ou refusés.

    • Le 14 novembre 2011 à 02:44, par Med_ En réponse à : Spip2Spip

      Merci de votre réponse !

      Après une (longue) investigation, il s’avère que le problème venait de la connectivité entre les deux plate-formes (chez un même hébergeur, mais sur des machines différentes, et entre lesquelles les règles de communication internes étaient rompues).

      Bref, tout est rentré dans l’ordre, et spip2spip fonctionne très bien !

    Répondre à ce message

  • Le 24 octobre 2011 à 22:43, par pamillet En réponse à : Spip2Spip

    question sur le résultat de la syndication

    un article syndiqué a-t-il qqchose de particulier qui ferait qu’il n e serait pas pris dans une boucle article ?

    je constate que les articles qui sont syndiqués n’apparaissent pas dans la partie ’article récent" de ma page d’accueil... je ne vois pas de raison dans la boucle article, tout à fait banale, sauf que les articles syndiqués n’y sont pas...

    la boucle concernée a les filtres suivants

    merci d’avance si ca dit qqchose ...

    pam

    Répondre à ce message

  • Le 6 mai 2011 à 19:05, par Loic972 En réponse à : Spip2Spip

    Pour ceux qui ont tout configurer correctement sur les deux sites, ajouter les mots clés aux articles et à la rubrique qui doit recevoir les articles et que rien ne se passe une piste simple :

    Dans le fichier backend-spip2spip.html, dans la boucle qui récupère les derniers articles à exporter, type_mot=- spip2spip -age<7>
    Le filtre « age<7 » ne récupère que les articles publié dans les 7 derniers jours si vos articles sont plus vieux ils ne sont pas exporté !

    Voila si ça peut vous aider retirer age<7 ou augmenter la valeur pour exporter des articles plus vieux

    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

  • Smileys

    10 janvier 2003 – 41 commentaires

    Idéal pour les forums, ce filtre peut s’appliquer sur tous vos squelettes. Il vous suffira de modifier vos squelettes et plus précisement les balises SPIP de vos squelettes auxquelles vous souhaitez appliquer ce (...)

  • Faire des citations dans SoyezCreateurs

    20 janvier 2010 – commentaires

    Le but de cet article est de vous montrer comment faire des citations dans un squelette Soyez Créateurs. Comment faire cela Tout d’abord le principe est à peu près le même que celui de la création d’un article. Il faut que vous créez un article dans (...)

  • MediaBox

    10 mai 2010 – 301 commentaires

    Aperçu La MediaBox est une Boîte multimédia polyvalente et personnalisable. Le plugin est basé sur la librairie moderne ColorBox, qui a été enrichie et adaptée pour SPIP. Par défaut, mediabox propose 5 habillages. Il est assez facile d’en créer de (...)

  • SPIP 3.0

    19 mai 2012 – 91 commentaires

    Nous avons le plaisir de vous annoncer la sortie de SPIP 3.0 ! Cette nouvelle version vous permet toujours de publier du contenu pour internet et de créer des sites avec une grande facilité. De nombreuses évolutions facilitent son utilisation (...)

  • ScolaSPIP pour SPIP3

    21 mai 2012 – 216 commentaires

    Un plugin-squelette personnalisable pour sites Web d’établissements scolaires