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
- Télécharger le plugin pour SPIP 3.0
- Télécharger le plugin pour SPIP 2.0
- Télécharger le plugin pour SPIP 1.9.2x
- 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
- Aller dans le groupe de mots-clés -spip2spip-
- Dans ce groupe, créer un mot-clé par chaîne thématique que vous voulez diffuser : sport, informatique, oenologie, ...
- 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.
- Je crée dans la mot-clé a-brest-B dans le groupe de mots-clés -spip2spip-
- 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
- <BOUCLE_listemot(MOTS){id_article}{type!==^[-]}>....</BOUCLE_listemot>
Alternative pour masquer le groupe -spip2spip : utiliser le critère doublons
- <BOUCLE_mot_cache(MOTS){type=- spip2spip -}{doublons spip2spip}> </BOUCLE_mot_cache>
- <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_URLl’adresse de l’article d’origine -
#S2S_URL_TRADl’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
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
- Le plugin Miroir de syndication
- Le plugin Flux RSS en articles



Version 2.4.2
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 :-)
# 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 secteur342 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 secteur342 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 spipConsulter 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
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