Importer en masse des articles

Ceci est une ARCHIVE, peut-être périmée. Vérifiez bien les compatibilités !

Grâce à un seul fichier texte, importer et créer plusieurs articles dans SPIP sans à avoir à passer par les étapes habituelles et leurs nombreux clics.

Il arrive que l’on veuille intégrer dans un SPIP un contenu externe contenant de nombreux articles (livre, revue, magazine). Or le processus de publication pour chaque article prend toujours quelques minutes. Lorsqu’il faut donc intégrer un ouvrage entier, on peut perdre des journées dans des copiers-collers fastidieux...

Ce script vise donc à faciliter l’import d’initial. Il crée les articles à partir d’un simple fichier texte dans lequel on a placé des signes « séparateurs » entre les articles et d’autres « séparateurs » entre les titres et corps de texte d’articles.

Installation


-  Copier les fichiers dans votre répertoire ./ecrire/
-  Accéder au script via l’url http://www.mondomaine.org/ecrire/massimport.php

Le fichier texte test.txt vous permet de tester si le script d’import fonctionne bien.

Configuration

Ce paramétrage est optionnel et le script fonctionne sans à avoir à les éditer

// La rubrique par defaut dans lequel on importe les données si celle ci n'est pas spécifiée par l'utilisateur
define ("ID_RUBRIQUE_PAR_DEFAUT","1");

// ID de l'auteur responsable des imports sinon on prendra celui de l'utilisateur identifié
define ("ID_AUTEUR_PAR_DEFAUT","1");
define ("UTILISER_AUTEUR_PAR_DEFAUT","0"); // 0 ou 1 

Suite

Il s’agit d’un script pour dépanner. Il faudrait généraliser avec des formats comme XML, CSV, ...

Dernière modification de cette page le 11 décembre 2006

Discussion

6 discussions

  • 3

    Très utile, ce script : SPIP a besoin de ce genre d’outils.

    Mais le script ne gère que le titre et le corps du texte. Pour importer 20 articles d’une revue de presse, ce serait très pratique de pouvoir spécifier les champs et les mots clés dans le même fichier texte.

    Je proposerait une syntaxe dans le genre :

    #titre Importer en masse des articles
    #motcles spip-contrib, ma source a moi, 32
    #soustitre un super script
    #texte
    
    mon texte

    Bref, une syntaxe facile à gérer, surtout au moment de la saisie.

    • En fait, par souci de cohérence, ce serait formidable de reprendre la syntaxe dévelopée pour envoyer des articles par mail :

      http://www.spip-contrib.net/chantie...

    • Well well well,

      Je ne sais pas si ça intéresse encore quelqu’un mais voici une nouvelle version avec un header enrichi.. inspirée de ce qui avait été fait pour la publication par mail.

      Je vous préviens, c’est toujours pour 1.8..

      Je vous laisse la découvrir MassImport V2

    • MassImport V2 ne fonctionne pas avec la version 1.8.1. Est-ce que vous connaissez un script qui permet d’importer des articles avec des mots-clés ?

      Merci !

    Répondre à ce message

  • 5
    Aurélien

    Bonjour,

    Y’a-t-il une maj de prévu pour importer les docs et img liés aux articles ?

    • il faut que je trouve le temps de passer la contrib en plugin.

      en attendant vous pouvez jeter un coup d’oeil à
      -  le plugin csv_import
      -  le plugin documents distants

    • Aurélien

      salut,

      merci pour la réponse. CSV IMPORT est-il fiable ? toujours en développement ? Où peux t-on le télécharger ?

      Je ne suis pas développeur donc je ne vois pas trop comment me servir des fichiers en ligne.

    • voilà importer en masse devient un plugin !

      il est compatible avec les versions récentes de SPIP (1.9+)
      http://zone.spip.org/trac/spip-zone...

      bon usage à tous !

    • Je signale ce qui a été déjà signalé.
      http://www.spip-contrib.net/Importe...

      Mais pour spip 1.8

      Et qui consiste à utiliser la syntaxe déjà proposée pour la publication par mail plus riche et qui ressemble plus à ce qui est déjà en usage.

      #titre : Mon article
      #auteur : hocus ; bozo ; 23
      #mots-clés : 5 ; nom complet ; nom partiel

      Et qui ressemble aussi dans un autre contexte à ce qui ce fait dans le plugin cfg
      [(#REM) boite=Test cfg].

      L’usage du signe egal me semblant mieux
      #titre= Mon article
      #auteur= hocus ; bozo ; 23
      #mots-clés= 5 ; nom complet ; nom partiel

      puisque déjà dans la syntaxe des
      modèles
      <son19|couleur=#ff0000 |legende=Le grand <i>Count Basie</i> |photo=12>

      Comme une nouvelle ligne commençant par un ’#’ marque un nouvel article et que le titre est signalé « #titre= Mon article ».

      Les « $$$$$ » et « ****** » ne devraient plus être nécessaire.

    • Salut a tous

      La version plugin avec le header enrichi est en cours. Il me reste deux trois pbs de charset a régler dans les recherches sur les noms partiels.
      Reste ensuite a l’intégrer a svn. Etant novice sur le sujet, je m’adresse au createur de cette merveilleuse contrib. Je peux faire un checkin de mes modifs par dessus les tiennes ou tu préfères que je crée un nouveau projet.
      amitiés
      Hocus

    Répondre à ce message

  • 1

    Super contrib, très utile dans le cadre d’un site avec portefolio.

    Couplée à un renomage d’images en logos d’article, on a importé 500 articles avec photos associées en moins d’une 1 heure, au lieu des 10 heures prévues.

    Vivement l’adaptation à la 1.9 de SPIP, voire le développement en plug-in ;-)

    • comment faites vous pour faire une renomage d’images en logo d’articles ?

    Répondre à ce message

  • 1

    Bonjour,

    J’ai besoin d’importer dans SPIP un répertoire de 10 000 contacts depuis une base de données Access.
    Nous avons dans un 1er temps récupéré cette base sous Excel, puis convertie en CSV.

    Cette contrib « Importer en masse des articles » me semble adaptée à cette opération.

    Plusieurs questions cependant se posent :

    -  Puis-je utiliser un fichier CSV ?

    -  Cette contribution a été faite pour SPIP 1.8. Or j’aimerai utiliser la nouvelle version de SPIP 1.9.1.
    J’ai ouvert massimport.php, et se posent des problèmes de compatibilité de versions de SPIP.
    Ligne 42 de massimport.php, par quoi faut-il remplacer : include (« inc.php ») ; et include_ecrire (« inc_admin.php ») ;

    Merci par avance de vos conseils et de votre aide.

    Fabienne

    Répondre à ce message

  • Il y a un problème d’encodage de la page massimport.php3, qui ne semble pas être en utf-8.

    Répondre à ce message

  • Très util ce script, merci

    Rainer

    Répondre à ce message

Ajouter un commentaire

Qui êtes-vous ?

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