Partageur

Permet de recopier facilement des articles d’un site SPIP partageur à l’autre.

Présentation

Ce plugin est né d’un besoin de partager des articles entre sites SPIP.

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.

Installation

Télécharger et installer comme un plugin habituel
Ce plugin nécessite l’utilisation du plugin CFG

Une fois activé, le site devient partageur.
Tous les sites qui utilisent « partageur » peuvent recopier vos articles publiés.

Techniquement, l’installation du plugin provoque :

  • La création d’une table spip_partageurs stockant les sites partageurs
  • L’ajout de deux champs supplémentaires sur la table spip_articles qui peuvent être exploités éventuellement dans un squelette, dans une boucle ARTICLES (ces champs sont communs avec le plugin Spip2Spip)
    • #S2S_URL l’adresse de l’article d’origine
    • #S2S_URL_TRAD l’adresse de la traduction de l’article d’origine
  • L’activation d’un flux au format Spip2Spip sur tous les articles publiés. L’adresse de ce flux est http://tld.org/spip.php?page=backend-partageur&id_article=XXX

Configuration

Dans le panneau de configuration vous pouvez définir les options d’export / import

  • Clé d’authentification (voir détails au chapitre suivant)
  • Faut il exporter les mots-clés de votre article ? si oui de quels groupes ?
  • Statut des articles importés : « Proposé » ou « Publié »
  • Mots-clés :
    • Faut-il importer les mots-clés d’articles ?
    • Faut-il importer les mots-clés d’événements ?
    • Si oui, où et comment faut-il importer ces mot-clés ?

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('_PARTAGEUR_RECUPERER_CONTENU', false);
define('_PARTAGEUR_RECUPERER_DOC', false);

Clé d’authentification

Par défaut, une fois que vous activez le plugin partageur, tous les sites peuvent potentiellement récuperer tous vos articles publiés.

Ceci peut s’avérer génant et un peu intrusif. C’est pourquoi nous avons introduit un système de clé d’authentification, par exemple si vous ne souhaitez diffuser vos articles à un groupe restreint de sites d’amis.

Dans ce cas, il faut définir dans le panneau de configuration une clé (au choix). Ensuite il suffit de donner cette clé aux sites qui veulent récupérer vos articles.

Exemple d’utilisation

Ce plugin n’est accessible qu’aux administrateur du site

Étape 1 : Inscrire vos sites partageurs
Dans le menu édition de votre site, aller sur le « Partageur »

Dans cette section, vous pouvez ajouter et supprimer les sites partageurs

La clé d’authenfication n’est nécessaire que sur les sites sur lesquels une clé est activée.

Attention : Pour inscrire un site partageur, il faut que ce site ait aussi installé le plugin partageur. C’est à dire que son flux partageur http://tld.org/spip.php?page=backend-partageur&id_article=XXX soit accessible.

Étape 2 : Aller sur la rubrique dans laquelle vous voulez ajouter des articles
En bas à droite de votre rubrique se trouve le bouton d’import

Étape 3 : Choisir l’article du site distant que vous voulez importer
Il est possible de sélectionner l’article en naviguant dans l’arborescence du site ou alors en utilisant le moteur de recherche

Étape 4 : Importer votre article

  • Par défaut, votre article importé a le statut « Proposé à la publication »
  • Le plugin recopie le texte (au format SPIP), les auteurs, les documents, logos et événements (si vous avez le plugin agenda), les liens de traductions.
  • Si l’article est déjà présent sur votre site, le plugin n’importe pas l’article et vous prévient.

Avertissement

Attention de ne pas abuser de la recopie d’articles sous peine de se voir bannir des moteurs de recherche pour Duplicate content.

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})]

Notes

[1Notez bien que cette source est conservée même à travers des importations en cascade ; par exemple un site A qui importe depuis B qui lui-même importe depuis C : le site A a bien l’information que tel article vient du site C. Cas d’usage : centraliser des articles d’une galaxie de sites pour qu’ensuite des membres de cette galaxie récupèrent certains des articles sélectionnés

Discussion

39 discussions

  • Sous spip 4.2.6 j’ai téléchargé le plugin. Aucun message d’erreur pourtant il n’apparaît ni dans les plugins actifs, ni dans les plugins inactifs. Les fichiers sont bien présents dans le dossier auto.

    Que faire ?

    Merci

    Robert

    Répondre à ce message

  • 4

    MERCI aux auteurs de ce plugin.

    l’URL du site distant n’est pas recopiée. Est-ce normal ?

    • Je veux dire, l’URL que l’on modifie éventuellement sur l’article du site distant. Sur le site qui fait la recopie, l’URL est recalculée selon la règle SPIP.

    • Aux auteurs du plugin :

      J’ai implémenté la fonctionnalité ci-dessus, activable optionnellement. Si on m’y autorise, je peux commiter sur le GIT de SPIP ?

    • Bonjour,

      Je n’ai pas compris ce que ça faisait.
      Mais oui, tu peux faire une branche pour proposer la modification.

      J’en profite pour te demander : est-ce que tu aurais adapté le plugin à SPIP 4.1 ?

    • Bonjour RealEt

      Ouuuh, ma proposition date un peu. Depuis, j’ai réalisé un fork spécifique de ce plugin, adapté à mes besoins. Cette version est assez éloignée du plugin initial. Et elle n’est pour le moment pas compatible pour SPIP 4 bien que nous ayons planifié la migration.

      Je ne sais pas si je dois rendre ce fork public ou pas ?

    Répondre à ce message

  • 2

    Bonjour, et encore merci pour le développement de ce super Plugin !

    Sera-t-il porté sur la version 4.0 de Spip ?

    Merci

    • En modifiant les bornes de paquet.xml, le plugin semble fonctionner avec la version 4.0 de spip.

    • J’ai encore des choses qui ne passent pas en 4.1 (sur les documents).

    Répondre à ce message

  • 8
    Jourocos

    Partageur est facile d’emploi....mais si les textes sont bien transférés, ce n’est pas le cas des documents (images illustrant les textes) qui n’apparaissent pas après le transfert. Qui peut me donner une piste de dépannage ?

    • Tout pareil pour moi, sur un Spip flambant neuf.

    • Mince, je me trompé de fil...

    • Chez moi, les images sont recopiées mais pas le logo. Avez-vous trouvé la cause ?

    • et sur d’autres sites, j’ai le logo mais pas les images, et les modèles doc sont supprimés du texte.

    • Bonjour,

      Idem, transfert de Spip 3.2.7 à 3.2.7 neuf, j’ai le texte et les logos, mais aucun doc joint.

    • Ce problème persiste et je n’ai rien trouvé dans les commentaires pouvant répondre à ce problème... même en forçant à « true » la récupération des fichiers dans le fichier mes_options.php... quelqu’un a-t-il trouvé une solution. Je suis en pleine phase de réintégration de 4 sites en un seul et ne pas avoir les documents et très pénalisant...

    • C’est réparé pour les documents avec la dernière version.

    • Merci, je teste dès que possible

    Répondre à ce message

  • 2
    Spidermian

    Bonjour,

    Lorsque je veux afficher un sites partagé
    J’ai cette erreur dans Spip

    Erreur SQL 1054
    Unknown column ’partageurs.date’ in ’where clause’
    SELECT id_partageur FROM spip_partageurs AS partageurs WHERE (partageurs.statut = ’publie’) AND partageurs.date<’2019-11-08 00:00:00’ AND partageurs.id_partageur=1

    et

    Erreur SQL 1054
    Unknown column ’partageurs.date’ in ’where clause’
    SELECT id_partageur FROM spip_partageurs AS partageurs WHERE (partageurs.statut = ’publie’) AND partageurs.date<’2019-11-08 00:00:00’ AND partageurs.id_partageur=1

    L’erreur viendrait de la ligne 1005 du fichier public/composer.php
    dans la boucle calculer_select() sql_select() ;

    En vérifiant la base de données il n’y a effectivement pas de colonne date
    mais par contre une colonne maj

    Merci de m’éclairer...

    Répondre à ce message

  • Hello
    J’ai installé le plugin sur 2 sites : l’un en spip 3.0.17 et l’autre en spip 2.1.12 (je sais c’est trèèèès vieux mais ce n’est pas mon site)

    Aucun souci pour l’accès aux paramétrages des 2 côtés.
    Pas de souci du côté du spip 3.0.17 qui voit bein l’autres ite et peut récupérer des articles.

    Par contre sur le spip 2.1.12, quand je clique sur « Edition - Partageur », j’ai une page blanche et quand je vais dans une rubrique et que je clique sur le bouton « Importer des articles en partage », j’ai également une page blanche.

    Une idée du problème ?

    Répondre à ce message

  • 1

    Re-bonjour

    Certains de mes modèles perso disparaissent totalement dans l’article recopié. Est-ce un bug connu ?

    • Il faut juste définir la constante dans mes_options.php :

      	define ('_SPIP2SPIP_IMPORT_HTML', '1'); // Pour autoriser l'import de HTML avec Partageur

    Répondre à ce message

  • Les liens internes restent tel que, c’est normal ?

    Exemple : sur le site distant, on a [texte du lien->rubrique123]. Dans la recopie, on a exactement la même chose. Ne faudrait-il pas plutôt avoir [texte du lien->url distant/rubrique23]

    Répondre à ce message

  • SUGGESTION : si l’article source est modifié, avertir :
    -  par un message sur l’article recopié
    -  le webmaster (ou l’auteur) par mail

    Répondre à ce message

  • SUGGESTION : pouvoir recopier toute l’arborescence d’une rubrique

    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 :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

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.

Qui êtes-vous ?
[Se connecter]

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

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom