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
je ne comprends pas non plus pourquoi cela marche pour un article et pas pour un autre qui est dans la meme rubrique et auquel j’ai ajoute le mot cle spip2spip. D’autres experiences dans ce gout la ?
Répondre à ce message
Indispensable plugin pour moi, merci infiniment...
simplement j’aimerai demander comment changer spip2spip_fonctions.php pour qu’il importe aussi les articles deja publies . Merci de votre interet,
Répondre à ce message
Moi aussi, Fabrice, j’ai le même problème que toi.
Je viens de m’y atteler donc, je n’ai pas de solution à te proposer, si tu en trouve une, merci de la partager.
Répondre à ce message
Bonjour,
Merci pour ce plugin qui devrait m’apporter beaucoup... quand j’aurais réussi à l’installer :
Dans Configuration / Gestion des plugins j’ai, à la place de la liste des plugins, « Fatal error : Call to undefined function : sql_insertq() in /home.10.16/basesql/www/plugins/spip2spip/base/spip2spip_upgrade.php on line 14 » après activation de Spip2Spip ...?
Dans « Edition / Spip2Spip » (Qui s’affiche bien) l’installation se déclenche, se termine... mais n’aboutit pas : Pas de groupe de mot-clés « Spip2Spip » créé... ?
En revenant sur « Edition / Spip2Spip » cette page ré-affiche « Spip2Spip n’est pas encore installé. Installer Spip2Spip »
J’ai essayé sur 2 sites différents avec CFG activé, l’un sous Spip 1.9.2c comportant de nombreux plugins, l’autre sous Spip 1.9.2d ne comportant qu’Accès restreint et Forms et Tables ( et CFG) : Même incident
Un conseil ? Une solution ?
D’avance merci, j’aimerai beaucoup pouvoir utiliser ce superbe plugin
Auto-réponse pour les spipien(ne)s qui rencontreraient le même problème :
- Après mise à jour de la dernière version de CFG l’installation s’est faite correctement
- Mais des lignes « Warning.../ecrire/public/compiler.php » sont apparues sur CFG et Configuration de plugins liés.
- En désactivant Autorité ces lignes ont disparu
- Spi2Spip est donc sensible à la fraîcheur des plugins installés avant lui
Hélas, bien que le site 1 s’affiche bien dans Gestion des sites du site 2 et qu’un mot-clé soit bien associés à des articles du site 1 et à une rubrique du site 2... aucun article n’apparait sur le site 2...
Bref si dans la forme ça va mieux, dans le fond je ne suis pas plus avancé
Dernières précisions :
En syndiquant manuellement Spip2Spip répond :
La syndication a échoué : le backend indiqué est indéchiffrable ou ne propose aucun article.
Alors que le flux s’affiche bien :
et qu’un même mot-clé du groupe - spip2spip - est bien sur 3 articles publiés du site 1 et sur une rubrique à la racine du site2
Mon hébergeur est OVH.
Je continue de chercher la solution mais si quelqu’un la connaît qu’il n’hésite pas... D’avance merci !
Feuilleton suite :
Après avoir supprimé mot-clé, groupe, Spip2Spip et vidé le cache... pour voir si une nouvelle installation changerait quelque chose, je me retrouve avec le même problème qu’Evelyne Desandre (message du 21 mai) :
J’ai continuellement le message :
« spip2spip n’est pas encore installé.
installer spip2spip »
même après avoir validé « installer spip2spip »
Feuilleton suite 2 :
A force de tentatives multiples et variées,
désinstaller manuellement Spip2spip pour le réinstaller abouti toujours (Chez moi) au résultat décrit plus haut) ; mais cliquer sur l’icone « pack » à droite du plugin dans « Gestion des plugins » puis sur « Effacer tout » puis vider le cache puis cocher le plugin et valider puis vider le cache encore abouti à l’installation.
Ouf ?
Non -> Retour à la case départ : « La syndication a échoué : le backend indiqué est indéchiffrable ou ne propose aucun article. »
Pourquoi « animer » ce forum devenu désertique ?
- Je m’y sens bien et c’est reposant. Après des jours de bagarre avec un Spip2Spip très prometteur l’on y est tranquille.
Cependant j’avoue qu’un peu de compagnie ne me dérangerait pas...
Hum... je m’ennuie vraiment.
SPIP2SPIP ça marche chez vous ?
Je réponds à moi-même encore une fois puisque je n’ai pas d’autre choix.
Une piste était : http://forum.spip.org/fr_203763.html
(J’en profite pour remercier les contributeurs au forum cité) J’ai modifié les fichiers comme indiqué... aucune amélioration pour Spip2Spip.
Cette piste m’a amené à une mise jour Spip version 1.9.2e... que je ne connaissais pas ... aucune amélioration...
Je ne manquerai pas de me tenir au courant de mes recherches de solution à mon problème Spip2Spip... si elle existe (?)
Répondre à ce message
La description du plug-in me fait envisager un montage un peu tordu qui répondrait à un vieux besoin pour moi :
1- soit un site SPIP sur un serveur principal, toujours en ligne.
2- soient des rédacteurs, souvent déconnectés (mobilité), mais dotés de portables possédant un site SPIP installé en local.
Les rédacteurs écrivent sur leur site local et synchronisent lorsqu’ils sont de nouveau en ligne. Bien sûr, chacun aurait sa propre thématique, pour éviter les incohérences.
Est-ce que cela vous paraît jouable ? Y’aurait-il une alternative plus simple (que je n’aurais pas vu) ?
idée originale
une alternative serait une solution de push (voir les archives de spip-contrib), c’est à dire publier un article en envoyant un email.
bonne chance
ps. pour infos, certains personnes ont déjà utilisé spip2spip pour importer dans spip des articles venant des sites dynamiques non-spip.
Merci pour les encouragements !
Si une IP fixe des serveurs mobiles est tout ce qu’il y a de requis, ce sera bon : les utilisateurs auxquels je pense seront assez dégourdis pour passer à travers un proxy (ou tunnel ou VPN, on verra) dont le serveur SPIP « principal » guettera les flux sortants.
Je vais essayer de tester ça dans un délai « raisonnable »... et je vous tiendrai au courant...
Hello :)
Je me permet de remonter ce forum parce que l’idée proposée est (comme le plugin, hein Erational ? ;) ) tout simplement géniale !
Qu’en est-il donc de tes cogitations Christian ?
Pas avancé, désolé. Vacances, puis rentrée avec trop de priorités divergentes...
Répondre à ce message
Ca devrait être bon maintenant
merci kent1 pour ce commit
Répondre à ce message
Merci par le plugin !
Il serait possible creer les canales temathiques sans recopier le contenu ? Simplement montrer les articles comme la syndication classique, mais parmi les canales temathiques, et opcionelment l’importation « manuelle » de quelques articles selectionés...
pour ne pas recopier les articles, il suffit de ne pas attribuer des mots-clés thématiques aux rubriques (pas de destination = pas d’import)
pour l’importation manuelle, cela me semble difficile à mettre en place simplement. le but du plugin est de soulager les rédacteurs
par contre on peut choisir le statut de l’article importé : proposé, publié, à la poubelle, .... si tu choisis « proposé à la publication » et tu effectues la modération, cela devrait répondre à tes besoins d’importer qq articles ponctuellement.
« pour ne pas recopier les articles, il suffit de ne pas attribuer des mots-clés thématiques aux rubriques (pas de destination = pas d’import) »
alors, il montre les articles syndiques pour les publiquer par syndication dans le site comme d’habitude ? et alors, il ne serait possible de les creer un bouton pour forcer son importation individuellment ? Ce bouton « lierait » l’importation ¿no ?. Je ne sais trop de php et par cela je ne te peut aider, mais dans tu code, il serait dificile ou lourde inclure cette option ? et un menu deroulant pour selectioner la rubrique de chacun ?... ;-)
Merci par tout.
Répondre à ce message
Excellent,
Je m’en vais le tester de ce pas.
Suggestion : serait-il possible dans un avenir pas trop lointain d’intégrer également les événements du plugin Agenda ?
Si cela vous interesse, je viens de finaliser une version pour importer les evenements agenda, et egalement permettre la mise a jour de l’article et des evenements.
excellent, spip2spip est sur le SVN. le plus simple est que tu commites directement sur la zone
Oui !
Alors là je dis merci et bravo !
On est à un petit commit et je pourrais enfin envisager de partir en vacances.
Voici le zip car spip-zone met trop de temps a répondre :
http://fblutch.free.fr/spip2spip/spip2spip.zip
a vous de me dire si ça marche chez vous, je suis en 1.9.2 moi
c’était pour un projet ou j’avais besoin que les articles soit identique pour qu’il n’y est qu’une seul saisi.
Voila voila
Répondre à ce message
Bonjour
J’ai continuellement le message :
même après avoir validé
"installer spip2spip"
En désespoir de cause, j’ai créé, en me fiant au fichier spip2spip_install.php, manuellement la table et le groupe de mots-clefs , mais cela ne semble pas pris en compte puisque j’ai toujours le même message.
Précision : j’ai plusieurs préfixes dans ma table et j’y ai fait attention lors de la création. mais spip2spip peut-il reconnaitre le bon préfixe utilisé ?
Un conseil ? Une piste ?
merci
bizarre, utilisez vous des préfixes de tables non standards ?
regardez votre log spip ou essayer de debugger apres la ligne 58 de /exec/spip2spip.php
$sql = "SELECT COUNT(titre) AS c FROM ".$table_prefix."_groupes_mots WHERE titre='- spip2spip -'";
ajouter
echo $sql;
pour voir la requete qui sortRépondre à ce message
bien vu mais le duplicate content vous y avez pensé ? Je m’explique google ne referencera qu’une seule des pages, donc le site de l’article original pourra par exemple simplement disparaitre de google ...
Cédric
Commodo, agence conseil en publicité
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 : |