Fonctionnalités
Spip2spip permet à des sites Spip qui ont des thématiques en commun de s’échanger directement les articles au format Spip.
À la différence d’une simple syndication, l’article va être importé en tant qu’article dans la rubrique du site destination. Cet 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échargez le plugin
- Activez le plugin dans le menu habituel.
L’activation du plugin crée automatiquement le groupe de mots-clés -spip2spip- qu’il faudra compléter pour tagguer les thématiques à échanger. - Renseignez les sites avec lesquels vous voulez importer des informations, en les ajoutant dans le menu édition > spip2spip
Paramétrage du plugin
Dans le menu de configuration, vous pouvez définir vos options d’import :
- Quel est le statut des articles à importer : proposé ou publié ?
- 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 ?
Via config/mes_options.php il est possible de :
- Bloquer la récupération du contenu (si la seule information qui nous intéresse, c’est le titre et l’origine du contenu)
- Bloquer la récupération des documents joints
define('_SPIP2SPIP_RECUPERER_CONTENU', false);
define('_SPIP2SPIP_RECUPERER_DOC', false);
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 permet de les diffuser aux autres sites
- attribuer ce mot-clé à une rubrique permet d’y 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 automatique de 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 et ultérieur
- 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
- Allez dans le groupe de mots-clés -spip2spip-
- Dans ce groupe, créez un mot-clé par chaîne thématique que vous voulez diffuser : sport, informatique, œnologie, ...
- Attribuez ces mots-clés aux articles concernés.
Cela permet à votre site de proposer ses articles à la syndication spip2spip via l’adresse réservée :
Flux simple
http://monsite.org/spip.php?page=backend-spip2spip
Flux complet avec les événements
http://monsite.org/spip.php?page=backend-spip2spip-agenda
Flux de tous les articles d’un auteur
http://monsite.org/spip.php?page=backend-spip2spip-auteur&id_auteur=XX
S’abonner à une chaîne d’information
Je vais maintenant m’abonner à des sites amis pour recopier automatiquement les articles qu’ils proposent.
é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.
Origine de l’importation stockée par le plugin
2 champs supplémentaires dans la tables spip_articles permettent d’avoir accès à la source distante d’origine de l’article importé [1].
Sont donc stockés :
- #S2S_URL_SITE_DISTANT : l’URL du site distant (en principe sans / final)
- #S2S_ID_ARTICLE_DISTANT : l’identifiant de l’article sur le site distant
Vous pouvez par exemple :
- Faire un lien sur l’article d’origine :
<a href="#S2S_URL_SITE_DISTANT/?article#S2S_ID_ARTICLE_DISTANT">#TITRE</a>
- Appeler un squelette sur le site d’origine pour incorporer son résultat à votre page :
[(#VAL{#S2S_URL_SITE_DISTANT?page=inc_pour_inclusion_distante&id_article=#S2S_ID_ARTICLE_DISTANT}|recuperer_url_cache|table_valeur{page})]
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_URL
l’adresse de l’article d’origine -
#S2S_URL_TRAD
l’adresse de la traduction de l’article d’origine
Astuces (ter)
À 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
define('_SPIP2SPIP_IMPORT_HTML', true);
Évolutions
version 4.x | Compatibilité SPIP 4 | |
---|---|---|
version 3.4 | Mars 2018 | Ajout d’un flux pour exporter tous les articles d’un auteur |
version 3.3 | Mai 2017 | Ajout des champs pour stocker l’origine et de la possibilité de bloquer la récupération du contenu et des documents |
version 3.2 | Juin 2016 | Version SPIP 3.1 Correction de bugs sur l’import de documents et logos Flux version 1.9 permettant l’import d’auteurs avec le nom comporte une virgule comme SMITH, Robert |
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 Partageur
- Le plugin Flux RSS en articles
Discussions par date d’activité
73 discussions
La version 1.9.2 n’est pas disponible, 404.
nous avons actuellement un problème avec le script générant les archives sur la zone. merci de patienter un peu ou de récupérer directement le script depuis la zone.
bonsoir, j’ai installé le plugin sur 2 sites (pour transférer d’un spip 1.9.2 vers un 2.0.8) et mon fichier XML refuse d’afficher plus d’un article :
- j’ai utilisé le plugin correctement 1 fois pour recopier 1 article (pour essayer) : Nickel, ça marche !
- tenté d’utiliser en ajoutant d’autres articles , et d’autres mots clés dans le groupe - spip2spip - : Rien ne s’ajoute au fichier XML ! il reste tjrs le 1er article que j’avais ajouté.
- j’ai vidé le cache, définit un cache de 0*3600 pour la page backend-spip2spip.html, inclus un recalcul avec le var_mode dans l’url... rien n’y fait !
- L’adresse de mon flux
- En plus j’ai essayé de modifier le nom du mot-clé associé au seul article apparaissant : il change bien aussi dans le flux, merde alors !
- c’est donc le fichier backend-spip2spip qui doit me sélectionner q’un seul article je me suis dit ...
- j’ai installé la version du plugin pour Spip2.0 sur le site en 1.9.2 ... bizarrement il fonctionne mais le flux reste tjrs inchangé !
Mon problème est donc simple, mais je ne sais comment le résoudre... un peu d’aide ?
Cordialement, un mordu de Spip :)
Répondre à ce message
Bonjour,
j’ai finalement réussi à faire fonctionner ce plugin entre mes 2 spips. Je me demandais s’il était possible de ré-importer des articles supprimés et si une modification d’un article, sur le site « serveur », pouvait être automatiquement mise à jour sur le site « distant ».
merci par avance
bonjour
pour ré-importer des articles, il faut vérifier deux choses :
en espèrant que cela puisse aider !
Répondre à ce message
Ce plug-ins peut-il fonctionner pour Spip 1.9.1.
Une fois installé sous 1.9.1, je ne vois rien apparaître dans le menu Edition et je n’ai pas de groupes de mots clés -spip2spip.
Peut-être qu’une installation manuelle pourrait résoudre mon problème ?
Merci pour les réponses.
Répondre à ce message
Bonjour,
J’ai trouvé l’explication de mes soucis.
- J’essayais d’importer des articles de mon site sous Spip 1.9.2 vers celui sous Spip 2 dans une rubrique ne contenant pas d’article.
— j’ai créé un article bidon “en ligne” et la syndication s’est faite immédiatement.
Conclusion :
Philippe
Répondre à ce message
Bonjour,
Y a-t-il incompatibilité entre les 2 versions du plugin ? Je fais migrer progressivement un site de Spip 1.9.2 à Spip 2. J’ai créé un sous domaine avec un autre base de données. Pour ne pas tout réécrire, j’ai pensé copier les articles à l’aide de spip2spip.
- j’ai mon site d’origine sous Spip 1.9.2 avec le plugin spip2spip pour Spip 1.9 installé manuellement par FTP sur lequel j’ai créé le groupe de mots clés spip2spip avec un mot clé « quisommesnous » affecté à chaque article à exporter.
- j’ai mon site en développement sous Spip 2 avec le plugin pour Spip 2 (installation auto) sur lequel j’ai affecté le même mot clé « quisommesnous » sur la rubrique destinée à recevoir les articles.
- Pour ne pas avoir à réécrire les boucles et les fonctions, j’ai désactivé des 2 côtés les « belles puces » qui me transforment le groupe de mots clés - spip2spip - en -* spip2spip - .
A partir de l’espace privé du site sous Spip 2, je vois bien le flux de mon premier site ( http://www.asc-annemasse.com/spip/spip.php?page=backend-spip2spip ) mais je n’arrive pas à importer quoi que ce soit. J’ai toujours le message « aucun article à syndiquer actuellement ».
N.B. J’ai fait le test avec le mot clé a-brest-B sur le site a-brest.net et j’ai parfaitement réussi à importer les articles avec importation de l’auteur. Est-il motorisé par Spip 2 ?
- Je me trompe certainement dans mon site Spip 1.9.2 mais je ne vois pas où !
Une aide serait bienvenue.
Merci pour le support.
l’administrateur du site.
Bonjour,
- Je me réponds à moi-même en attendant des explications.
La copie de site à site fonctionne si je change les dates de publication en ligne des articles dans le site d’origine sous Spip 1.9.2.
Spip2spip ne semble pas aller chercher les articles dont la date de rédaction est antérieure à la date du jour. Est-ce que je me trompe ?
P.G.
Je termine en faisant les constatations suivantes :
- la syndication manuelle ne marche pas depuis mon site en Spip 2 pour importer les articles de mon site Spip 1.9.2.
- en laissant faire le cron, j’importe correctement tous mes articles.
Philippe Guérindon
bonjour,
désolé pour la réponse tardive
c’est étrange je viens d’installer en local SPIP 2.0 et je réussis à syndiquer votre site sous SPIP 1.9.2 (flux) même en passant pour la syndication manuelle.
Répondre à ce message
Salut, j’ai installé le plugin sur mon blog pour renvoyer des pages vers un blog thématique. Spipclear en mutualisé dans les 2 cas, mais sur deux serveurs différents. C’est ok à un détail prêt : le id_secteur n’est apparemment pas inscrit en base de données du site « receveur ». Du coup, en spipclear le logo du site disparait...
C’est une hypothèse, confirmée par le fait que déplacer l’article dans l’arborescence de spip résout la chose. j’ai pas vérifié en bdd mais je viens vite faire état de l’hypothèse avant d’oublier... (pas d’accès à la base là présentement)
Merci pour ce plug !
Répondre à ce message
Spip2Spip ne marche pas avec Spip 2.0 apparemment...
Après installation, il me retourne la ligne suivante quand je veux configurer le plugin :
Fatal error : Call to undefined function debut_page() in D :\www\SITE\htdocs\w\plugins\auto\spip2spip\exec\spip2spip.php on line 40
Une idée ?
spip2spip est maintenant disponible pour SPIP2.
Merci de nous donner vos retours.
Répondre à ce message
comment cacher le groupe de mots cles spip2spip ? la boucle donnée dans l’article au dessus (
<BOUCLE_listemot(MOTS){id_article}{type!==^[-]}>
) semble ne pas marcher ou alors je ne sais pas l’utiliser.pour ma liste de mots cles classes par rubrique j’utilise la boucle suivante
une alternative pour cacher les mots-clés spip2spip est d’utiliser les doublons
ps. attention si vous utilisez le plugin belles puces (ou la lame du couteau suisse), le groupe - spip2spip - apparait sous la forme -* spip2spip -
il faut donc adapter vos boucles en conséquence
Répondre à ce message
bonjour erational
un petit message pour te suggerer d’ajouter la gestion des breves et la gestion des sites syndiqués a ce genial plugin spip2spip ( voire meme la fonctionnalité de copie ou deplacement d’une rubrique complete d’un spip a un autre ).
si besoin je peux aider, notamment en faisant des beta tests.
je vais aussi regarder un peu le code du plugin pour voir si je pourrai aussi aider sur le code.
bonjour neofutur,
oui sur le principe d’intégrer les brèves et les sites syndiqués (mais pas les articles issus de syndication)
il faut les proposer en options supplémentaires via la configuration du plugin.
je préférerai que le plugin de base soit axé sur les articles uniquement.
pour l’implementation, il faudra être vigilant (brèves uniquement sur les rubriques racines)
pour l’instant je n’ai pas le temps de coder cela mais libre à toi de commiter, tout est sur la zone
a++
Répondre à ce message
a ma derniere question, cela concerne les articles deja publies, et j’ai trouve ma reponse, il suffit de re-proposer l’article a la publication et de le re-publier ensuite (si vous avez configure le plugin sur les articles publies). Il faut refaire la procedure de publication en ligne pour qu’ils s’inscrivent dans le back end (qui est recu sur le site recepteur).
Par contre, il doit y avoir une limite de taille car les articles avec beaucoup de photos empechent la syndication de se faire jusqu’au bout...
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |