Conversion des brèves en articles

Avec l’évolution de SPIP, les brèves deviennent un objet historique, dont le maintien s’avère parfois inadapté. Il peut donc se révéler utile de convertir les brèves en articles, c’est ce que fait ce plugin.

La conversion des brèves en articles

Ce plugin sert à convertir les brèves de votre site spip en articles. Les nouveaux articles créés sont insérées dans une rubrique, et un auteur pré-existant leur est optionnellement affecté.

La conversion des brèves en articles traite les points suivants :

  • le contenu de la brève devient le contenu de l’article
  • tous les forums associés à la brève deviennent forums de l’article
  • le logo de la brève devient logo de l’article
  • les mots clés associés à la brève sont associés à l’article
  • la date de création de la brève est conservée comme date de création de l’article créé ainsi que date de publication et date de modification
  • le titre du secteur de la brève convertie est copié dans le surtitre de l’article (ce qui permet éventuellement de gérer à nouveau une pseudo arborescence de secteurs).
  • le statut de publication de la brève devient statut de l’article

Les brèves converties ne sont pas détruites, afin de conserver une trace de ces brèves, mais rien ne vous empêche ensuite de vider définitivement la table spip-breve.
Selon la configuration choisie, leur statut soit n’est pas modifié, soit est transformé en ’proposé’ ou ’refusé’.

Mise à jour des liens internes du site

Après avoir fait la migration des brèves en articles, il est intéressant voir nécessaire de modifier les liens de votre site qui pointaient vers les brèves, désormais obsolètes.

Le plugin permet de parcourir les différents objets du site, et de transformer un lien vers une brève, en lien vers l’article correspondant de cette brève.

Les objets parcourus par cette mise à jour sont :

  • articles
  • rubriques
  • auteurs
  • forum
  • syndic

Tout le contenu éditorial de ces objets est testé (titre, sous et sur, chapo, texte, descriptif ...). Les brèves elles-mêmes ne sont pas modifiées.

La recherche du lien se fait avec l’expression régulière suivante :
/\[([^]]*)-\>br[ev]{0,3}([0-9 ]+)\]/

Donc si une brève a été convertie en article, tout lien ->brXXX ou ->breXXX ou ->brevXXX ou ->breveXXX sera transformé en lien ->articleXXX

Pour cela, le plugin mémorise dans la table spip_breves_articles les correspondances entre un id_breve et l’id_article associé. Le nom de cette table peut être est redéfini dans le fichier options.php du plugin.

Suivi des liens externes au site

Le plugin fournit également un squelette exemple breve_redirection.html qui redirige les liens externes qui pointent encore vers les pages de breves de votre site vers leur remplaçant sous forme d’articles. Pour ce faire, ce squelette utilise la table spip_breves_articles remplie lors de la conversion.

Pour l’activer, il est nécessaire de le recopier avec le nom breve.html dans votre dossier squelette, une fois toutes les brèves converties.

Une fois ceci fait, ce nouveau squelette breve assure la redirection 301 des appels vers les anciennes breves vers les articles , c’est à dire sans perte de référencement.

Installation / Désinstallation

Ce plugin s’installe simplement .

La désinstallation supprime la table de correspondance entre les brèves et les articles créés.

Attention : pour l’instant, ce plugin a besoin du plugin bandeau pour fonctionner

Paramétrage et utilisation du plugin

La page pour accéder aux fonctions du plugin se trouve dans la partie privée, dans le menu Maintenances, puis « Breves vers Article ».

Il y a 2 modes de conversion :

  • pour tester, on indique le n° d’une seule brève
  • conversion de toutes les brèves du site

Les options accessibles sont :

  • la rubrique dans laquelle les articles crées seront insérés : obligatoire
  • l’auteur associé aux articles créés : facultatif
  • activer la modification des liens internes du site vers les articles issus de la conversion des brèves. Cette opération peut se faire en même temps que la conversion des brèves, ou bien plus tard. Les 2 opérations sont indépendantes, mais la conversion doit bien entendu se faire avant la modification des liens.

Discussion

14 discussions

  • Bonjour JLuc,

    Un grand MERCI pour ce plugin totalement opérationnel et parfaitement adapté à nos besoins.

    Il s’est révélé indispensable pour que le site « le semeur » puisse à nouveau exprimer pleinement sa matière au sens décrit dans l’article :

    Bien cordialement

    FDG

    Répondre à ce message

  • 13

    Bonjour ;

    Excellent plugin dont j’aurais l’utilité pour un site mais :

    Pourriez-vous ajouter la possibilité d’utiliser les secteurs comme rubriques dans lesquels les articles sont créés à partir des brèves du même secteur.

    Sinon il fut ultérieurement redistribuer à la main toutes les brèves depuis la rubrique unique de création des articles dans les bon secteurs, travail pour le moins non négligeable, oui alors faire la création brève par brève, ce qui est aussi très long et fastidieux.

    Ainsi on conserverait automatiquement la structure organisationnelle.

    Cordialement

    FDG

    • Hello François, merci pour ton avis sympathique.

      Pendant la conception de ce plugin nous avons envisagé comment ranger les articles générés et nous avons choisi de les stocker tous dans la même rubrique car c’est ce dont nous avions besoin. Il pourrait certes y avoir une nouvelle option pour stocker les breves dans des sous-rubriques mais ce n’est pas prévu pour l’instant. (gogogo développe qui veut !)

      Le titre de leur secteur d’origine est toutefois enregistré dans le surtitre de l’article, et il est possible de tester ce surtitre en critère des boucles ARTICLES qui les remplacent. ça devrait te permettre de faire tout ce que tu veux.

    • Hello JLuc,

      Merci pour votre réponse, je fais cependant la suggestion suivante sous forme de question :

      Est-ce compliqué pour vous de faire une version de ce plugin qui écrit l’article dans le secteur où elle trouve la brève correspondante ... plutôt que de l’écrire dans la rubrique indiquée dans le menu (ce qui semble l’application la plus logique de ce plugin, puisque l’on retrouve ainsi « les articles issus de brèves » dans les rubriques ou les auteurs ont voulu les placer à l’origine) ?

      Je suppose que oui, sinon vous l’auriez déjà fait !

      Bien cordialement

      FDG

    • Pour cela a première vue il suffit que tu remplaces les lignes 51 et 52 de breves2art_fonctions.php :

      $nouvel_article['id_rubrique'] = $id_rubrique;
      $secteur = sql_getfetsel('id_secteur', 'rubrique', 'id_rubrique='.intval($id_rubrique));

      par :

      $nouvel_article['id_rubrique'] = $res['id_rubrique'];
      $secteur = sql_getfetsel('id_secteur', 'rubrique', 'id_rubrique='.intval($res['id_rubrique']));
    • Salut JLuc,

      Je démarre les tests sous SPIP 2.1.10 et je bute d’emblée sur le point suivant , la doc indique :

      Paramétrage et utilisation du plugin

      La page pour accéder aux fonctions du plugin se trouve dans la partie privée, dans le menu Maintenances, puis « Breves vers Article ».

      Or je ne trouve nul part le lien « Breves vers Article »

      Je ne trouve pas le menu « Maintenances »

      Il y a bien « Maintenance du site » sous « Configuration » mais il ne s’y trouve pas de lien « Breves vers Article »

      Y-a-t’il incompatibilité avec certains plugins ?

      Cordialement

      FDG

    • Salut Jean-Luc,

      Sur une autre version, SPIP 2.1.8, j’ai désactivé tous les plugins, même problème : pas de lien « Breves vers Article »

      avec ou sans la correction que tu propose aux lignes 51 et 52 de breves2art_fonctions.php.

      Cordialement

      FDG

    • C’est pas une correction, c’est une modification pour couvrir tes besoins.

      Pour ton problème d’accés : il faut en effet pour l’instant le plugin « bandeau ». ça c’est à corriger pour que ça marche sans bandeau.

    • Salut Jean-Luc,

      Tu as raison, excuse-moi pour cette inattention coupable, il s’agit bien d’une modification pour couvrir mes besoins pour mon problème d’accès.

      Merci pour l’info : activer le plugin « bandeau ».

      Je vais tester cela dans les meilleurs délais et te tien au courant.

      Cordialement

      FDG

    • Salut Jean-Luc,

      Sur une version, SPIP 2.1.8, j’ai activé uniquement les plugins

      • « bandeau » et
      • « breves_vers_articles »

      et j’accède à la fenêtre de dialogue « Conversion de brèves en articles »

      que je renseigne pour convertir la brève 50 en un article dans la rubrique 251. J’ai fait moult essais avec différents réglages tels que : avec et sans auteurs, changer la rubrique de destination, changer la brève, etc. et toujours ole même résultat :

      Fatal error : Call to undefined function breve2art() in /srv/www/spip02/plugins/breves_vers_articles/formulaires/breves_to_art.php on line 75
      SPIP 2.1.8 [16966] est un logiciel libre distribué sous licence GPL.

      la ligne 75 est :

      breve2art(_request(’id_test’), _request(’rubrique_br’), _request(’auteur_br’)) ;

      J’ai donc besoin de tes lumières.

      Cordialement

      FDG

    • idem avec SPIP 2.1.10 :

      Fatal error : Call to undefined function breve2art() in /srv/www/spip01/plugins/breves_vers_articles/formulaires/breves_to_art.php on line 61
      SPIP 2.1.10 [17657] est un logiciel libre distribué sous licence GPL.

      Cordialement

      FDG

    • Désolé, ya eu un mélange de versions avant publication. On va corriger.

    • C’est corrigé, dans la nouvelle version 1.1 du plugin.

    • Pour info, la version 1.2 du plugin propose de nouvelles options, dont celle de ranger les articles créés dans le secteur de la brève qui est à son origine.

    • Bonjour Jean-Luc,

      BRAVO, c’est excellent. Je testerais et utiliserais prochainement cette version.

      J’ai testé la version juste antérieure il y a quelques jours (je n’ai pas eu le temps de t’en faire part) avec et sans la modification que tu indiquais (c’était les lignes 55 et 56 du fichier breves_vers_articles_fonctions.php qui étaient concernées). La conversion a parfaitement fonctionné :

      • Tant pour ranger les articles créés dans une rubrique choisie ;
      • Que pour ranger les articles créés dans le secteur de la brève qui est à son origine.

      Un grand merci pour cet excellent plugin. Je te tiens au courant des résultats de mon utilisation du plugin « breves_vers_articles ».

      Cordialement

      FDG

    Répondre à ce message

  • ... et en lançant la conversion de toutes les brèves j’obtiens :

    Fatal error : Call to undefined function breve2art() in /srv/www/spip02/plugins/breves_vers_articles/formulaires/breves_to_art.php on line 61

    Cordialement

    FDG

    Répondre à ce message

  • 2
    Tropicaloo

    Bonjour,

    Merci pour ce plugin qui va m’être très utile pour un vieux site à restructurer. Avant de l’utiliser, j’aurais une question sur la conversion :

    Qu’en est-il de la date de publication ET de la date de rédaction antérieure ? (pour les sites qui utilisent les deux dates). Y’a-t-il une possibilité d’injecter automatiquement la date de la brève dans les deux champs pour avoir une date de rédaction et de publication identiques ?

    Merci.

    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