Plugin Duplicator

Duplication des objets éditoriaux de SPIP : rubriques, articles, auteurs, ....

Fonctionnement

Auparavant limité à rubriques et articles, la version 2.0 du plugin permet de dupliquer aisément tous les objets courants de SPIP (rubriques, articles, auteurs, mots-clés, .....) en ajoutant un bouton “dupliquer” dans l’espace privé

Ce plugin peut être associé au plugin Vider rubrique afin de nettoyer plus facilement les arborescences.

Rubriques

Pour les rubriques, la duplication reprend :

  • les logos
  • les articles (leur contenu, leur statut, leurs mots clefs et logos)
  • les sous-rubriques (n niveaux), les mots clefs liés, ses articles (contenu + statut + mots clefs) et ses logos
  • l’URL en ajoutant le numéro de rubrique à la fin pour éviter des URL identiques
  • le contenu de la rubrique (description, etc.) et les éventuels champs extra s’ils sont mentionnés dans la configuration du plugin.

La nouvelle rubrique est créée au même niveau que la rubrique copiée.

Articles

Pour les articles, la duplication reprend :

  • le logo
  • le contenu et les éventuels champs extra s’ils sont mentionnés dans la configuration du plugin,
  • les documents joints
  • les mots clés
  • l’URL en ajoutant le numéro de l’article à la fin pour éviter des URL identiques.

L’article est créé dans la même rubrique.

Configuration

Dans la configuration du plugin, on peut choisir les objets que l’on veut permettre de dupliquer :

Sur chaque objet éditorial, vous pouvez déplier les options pour choisir:

  • les autorisations (qui a le droit de dupliquer ?)
  • si besoin les choix des champs à dupliquer
  • le statut à reprendre ou non
  • les enfants à reprendre ou non

Si on choisit l’autorisation par défaut, alors ça reprendra les mêmes droits :
-  soit que pour créer le même contenu dans le même parent (si on est sur un contenu qui a un parent)
-  soit pour créer le même contenu (si pas de parent)

Attention que pour les articles, par défaut, tout le monde a le droit d’en créer (y compris les simples rédacteurs). Donc si vous ne voulez pas que les gens n’ayant pas le droit puissent publier n’importe quoi, il faut bien faire attention à ce que le statut du contenu dupliqué soit bien remis “en cours de rédaction”.

En images

Un nouveau bouton apparaît dans la colonne de gauche des rubriques

Au clic une fenêtre de confirmation apparaît.

Après validation l’opération est executée.

La nouvelle rubrique est créée, contient la même hiérarchie que sa rubrique sœur, les articles sont conservés ainsi que leurs statuts et leurs contenus, en fonction de la configuration choisie.

Les articles quant à eux sont copiés dans la même rubrique.

Discussion

40 discussions

  • Stéphanie

    Bonjour,

    J’utilise régulièrement ce plugin et j’ai remarqué un bug pour dupliquer les sous-rubriques des rubriques depuis mon passage de PHP 7.4 à 8.2.
    J’ai la version SPIP 4.4.5 et duplicator en 3.1.0.

    Même le bouton pour dupliquer les éléments enfants pour les rubriques ne s’affiche plus.
    J’ai vérifié la configuration du plugin et elle est correcte.

    J’ai testé en mettant en commentaire la ligne de condition pour forcer l’affichage du bouton pour dupliquer les enfants ; il s’affiche mais quand je clique pour dupliquer les enfants, ça ne fonctionne pas ; il ne duplique que la rubrique parent.
    On dirait qu’il ne trouve pas les enfants pour les rubriques.

    Aucun message d’erreur.

    Merci d’avance.

    Stéphanie

    Reply to this message

  • 8
    Michel Suquet

    Bonjour,

    peut-on faire en sorte que les droits de duplication soient possibles pour des administrateurs restreints ? Dans les rubriques dont ils sont administrateurs.

    Cela ne fonctionne que pour les administrateurs non restreints d’après mes tests.

    Nous sommes en spip 4.4.2.

    Cordialement,

    Michel Suquet

    • Mais quelle config tu utilises ? Si tu laisses “autorisation par défaut” normalement ça prend bien l’autorisation de publier dans la rubrique parent dans laquelle tu te trouves. Donc bien ce que tu veux pour les admins restreints.

    • Michel Suquet

      En effet ! Je n’avais pas compris ce qu’était l’autorisation par défaut. Et effet, en mettant cette configuration pour les articles et les rubriques, cela fonctionne.

      Merci pour cette précision. J’avais mis Administrateurs en pensant que cela englober les administrateurs restreints. C’est en fait la configuration par défaut qui a cette possibilité.

      À mentionner dans la doc ?

      NB : en poursuivant mes essais, je viens de voir qu’un administrateur restreint peut dupliquer des articles dans une rubrique pour laquelle il n’a pas les droits. Pour les sous-rubriques, il n’a pas le bouton “dupliquer” ; seulement pour les articles. Est-ce normal ?

      Bon week-end.

    • Mais tu as activé pour les rubriques ?

      Pour les restreints je comprends pas trop car l’autorisation par défaut faut avoir le droit de publier dans la rubrique dans laquelle se trouve l’article …

    • Michel Suquet

      J’ai coché les cases pour Articles et pour Rubriques dans la configuration du plugin. Je pense que c’est ce que tu appelles “activé pour les rubriques” ?

      Pour l’essai que j’ai fait, avec un compte de test, j’ai pu dupliquer un article mais, ensuite, je ne peux pas modifier l’article obtenu puisque le compte d’essai n’avait pas les droits pour la rubrique dans laquelle se trouve cet article. Comme je pense que ce n’est pas le comportement attendu, je vous en rend compte.

    • Ah je pense avoir compris : l’autorisation c’est pas de *publier* mais c’est de pouvoir *créer* un article dans la rubrique en cours. Or *tout le monde*, admin restreint mais aussi simple rédac peut créer un article. Le problème c’est quand la duplication garde le même statut ET que c’était un contenu publié, dans ce cas la duplication va être publié aussi alors que ni le rédac ni l’admin restreint (pas de cette rubrique) n’a le droit de publier à cet endroit.

      Soit quand ya pas le droit il faudrait forcer à remettre le statut en brouillon. Soit au pire là tu peux déjà forcer le statut des duplications à brouillon même si l’original est publié, dans la config.

      Mais par contre c’est normal d’avoir le droit de dupliquer puisque tout le monde a le droit de créer un article. Si tu ne veux pas qu’ils aient le droit il faut surcharger l’autorisation “creerarticledans” les rubriques, en PHP (mais ça vaudra pour tout création, pas que les duplications).

    • Michel Suquet

      Ah, oui, je comprends mieux maintenant à quoi correspond l’autorisation par défaut : le bouton Dupliquer apparaît pour tous les rédacteurs ; peut-on ajouter cela dans la doc ?

      Et peut-on créer un stade d’autorisation minimale intermédiaire entre “par défaut” et “administrateur” pour les “administrateurs restreints” ? Cas pour lequel le bouton n’apparaît qu’à partir du moment qu’on est administrateur restreint.

      Merci pour les explications.

    • J’ai modifié un peu la doc pour préciser les autorisations

    • Michel Suquet

      Merci pour cette modification. C’est plus clair pour le paramètre des autorisations par défaut.

      Une remarque : au lieu de brouillon, je mettrai :
      … le statut du contenu dupliqué soit bien remis “en cours de rédaction”, le paramètre “garder le même” donnant le même statut de publication.

    Reply to this message

  • 1

    Bonjour

    dans le cas de la duplication d’un article, est ce que les rubriques issues de polyhierarchie sont aussi reprise ? Merci

    • Bonne question… à laquelle je ne sais pas répondre de tête. :p
      Il faudrait tester et faire un ticket si ce n’est pas le cas.

      La polyhiérarchie est toujours un peu particulière car sa table de lien (spip_rubriques_liens) n’est pas standard comme toutes les autres tables de liens (spip_mots_liens, spip_documents_liens, etc). Le plugin prend bien en compte les liens normalement, mais du fait que cette table à un format un peu différent, je ne sais pas si ça le prend bien en compte.

    Reply to this message

  • 1

    Bonjour
    J’ai passé un site en spip 4.2, php 8.1 chez O2switch. Et duplicator 3.0.4. Mais les rubriques et leurs enfants ne se dupliquent plus (tout marchait avant), je vois bien le bouton, mais quand on clique dessus, on a une page blanche et rien... J’ai laissé comme plugins Duplicator, Saisies pour formulaire et YAML. Que puis-je faire ?

    Reply to this message

  • Bonjour,

    La duplication d’un événement fonctionne très bien, mais s’il y a des répétitions celles-ci ne sont pas dupliquées.
    Est-ce que cette fonctionnalité est prévue ?
    https://git.spip.net/spip-contrib-extensions/duplicator/issues/11
    François

    Reply to this message

  • 4
    Delaney

    Bonjour,
    Je m’aperçois que Duplicator n’est pas indiqué comme compaatible avec Spip 4.1, y a-t-il une raison structurelle à cela ?
    En attendant je vais essayer de modifier paquet.xml pour voir si ça passe.
    Merci !

    • Bonjour,

      J’ai testé le plugin avec SPIP 4.1 :

      • duplication d’un article : ça a l’air OK
      • duplication d’une rubrique : la rubrique est dupliquée, mais pas les articles qu’elle contient

      Testé avec et sans le plugin Déclarer le parent

    • Il n’y a normalement plus besoin de déclarer parent. Et je viens de tester en v4.1.4 avec le plugin v3.0.1 -> ca marche, mais par contre j’avais un bug dans mon cache SPIP privé suite à une mise à jour depuis une autre version de SPIP -> j’ai du faire un recalcul pour avoir l’affichage correct.

    • Au temps pour moi, je n’avais pas vu le 2e bouton [Dupliquer ce contenu et ses enfants].

      Donc, le plugin fonctionne sous SPIP 4.1.

    • Michel Suquet

      je confirme, il fonctionne avec la version 4.1.5.
      https://apmep-iledefrance.fr/

      Une mise à jour du plugin est-elle prévue ?

      Cordialement,

      Michel Suquet

    Reply to this message

  • 1

    Bonjour,
    Juste pour signaler un coquille dans le fichier duplicator_autoriser.php, ligne13
    if ($autorisation = lire_config("duplication/$quoi/autorisation")) {
    >> Il est écrit duplication au lieu de duplicator !
    Du coup la configuration des autorisations ne fonctionne pas ...
    Cordialement
    TG
    PS : le problème a été reconduit dans la branche compat_spip_4

    • Merci. C’est corrigé dans master + releasé en v2.0.10

      Et j’ai aussi mis pour compat_spip_4

    Reply to this message

  • 1

    Bonjour,
    Je constate que je n’arrive plus à dupliquer mes événements via ce plugin alors que pour les articles cela fonctionne correctement.
    Agenda 3.39.5
    Spip 3.2.12
    Cela fonctionnait il y a quelques mois de cela.

    Quand on clique sur le bouton “Dupliquer ce contenu”, il ne se passe rien, pas de message d’erreur.

    Merci,
    JuL

    • Il me semble qu’il y avait un bug dans les version 3 d’agenda, corrigé dans les v4

    Reply to this message

  • Bonjour,

    Ce plugin très utile sera-t-il porté sur la version 4.0 de Spip ?

    Merci

    Reply to this message

  • Jean-Marc Vanel

    J’ai dupliqué cet évènement:
    https://www.linneenne-lyon.org/spip3/spip.php?article2022&var_mode=calcul
    mais le vrai URL ne marche pas: Erreur 404
    https://www.linneenne-lyon.org/spip3/spip.php?article2022

    SPIP 3.2.4 [24285]
    Duplicator 2.0.8 - stable

    Reply to this message

Add a comment

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.

Who are you?
[Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom