Wordpress 2 SPIP

Que fait Wordpress 2 SPIP

Il importe un site Wordpress 3.3.1 dans un site SPIP 2.1.12 vierge. Les deux sites doivent être sur la même base de données et les tables Wordpress doivent commencer par wp_ (cas d’une installation Wordpress par défaut).

Le plugin importe :
-  Les tags catégories comme rubriques
-  Les posts publiés en articles publiés
-  Les pages, comme articles uniques si vous installez le plugin pages uniques
-  Les comments comme forums publiés ou à valider
-  Les posts attachements comme documents distants
-  Les auteurs
-  Les mots clefs
-  Les liens entre ces objets
-  les multi categories si vous installez le plugin polyhierarchie
-  Les links comme sites
-  garde les mêmes id des objet wp

il ne gère pas les droits des administrateurs restreints (authors, ou auteurs) qui sont importés comme rédacteurs,

Les cas non gérés par ce plugin


-  les doublons sur les noms des mots clef (importés à l’identique)
Le plugin Fusion de mots clefs permet de régler les doublons.
-  le statut ’author’ qui est l’admin restreint en SPIP, devient rédacteur.
(pas possible de faire correspondre la notion de rubrique n’existant pas dans wp) un avertissement avec l’id et le login est fait dans les stats des objet wp pour ce statut si il est trouvé.

Mode d’emploi


-  installer un SPIP à côté de wordpress sur le même serveur (même base de données).
-  configurer selon vos besoins, l’utilisation des mots clefs des documents joints aux articles, les forums.
-  installer le plugin comme d’habitude.
-  installer les plugins optionnels pages uniques et polyhierarchies ils garantissent un import identique si vous voulez conserver la même structure des données..
-  menu ’configuration / migration depuis wordpress’ lancer la conversion.
-  depuis le menu ’configuration / maintenance du site’ restaurer le fichier
wp2spip.xml (Si l’import se fige, rafraîchissez la page)
-  si vous refaites la manip repartez toujours depuis un site SPIP vierge et avec
le cache vide.

-  une fois importé, se reconnecter avec son compte webmestre SPIP, Et pour les auteurs wordpress, ils doivent simplement recréer leur mot de passe via
la page de login avec ’mot de passe perdu’

-  Choisisez les rubriques (depuis edition auteurs) des admins restreints signalés et devenus rédacteurs.

Fonctionnement

Le plugin génère via des squelettes un fichier de restauration SPIP et le place sous /tmp/dump/wp2spip.xml. La procèdure normale de restauration depuis /ecrire/?exec=import_all permet d’installer le site importé [1]. Le plugin est gourmand en ressources et il vaut mieux l’utiliser en local. Aussi, utilisez-le sur un site vierge.

La restauration de ce fichier provoque un écrasement des données SPIP.
L’auteur webmestre qui utilise le plugin est ajouté aux auteurs importés.
 [2]

Une fois wodpress2spip installé, rendez-vous /ecrire/ ?exec=wp2spip ou depuis configuration / migration depuis wordpress.

Une page récapitulative compte les objets Wordpress.
Et le script crée le fichier /tmp/dump/wp2spip.xml au format SPIP.

Réglages serveur

Pour mes besoins, la b.d.d. wp avait 3000 articles publiés sur 13000, 4800 mots clef, 3000 documents, et les paramétres memory_limit et max_execution_time ont du être augmentés dans le php.ini. Si ce plugin provoque une page blanche ou erreur http 500, votre php.ini est à modifier.

En squelette et oui

Le répertoire inc du plugin contient les fichiers squelettes qui génèrent
le xml du dump SPIP.
Selon vos besoins il est aisé de surcharger ces squelettes.
Notamment pour transformer éventuellement le contenu texte des articles, par exemple.

Reste à faire


-  mettre des chaînes de langues et traduire le plugin.
-  réécrire proprement wp2spip_options.php
-  ajouter des filtres pour les champs texte des articles etc.
-  ajouter le traitement vers les plugins pages, polyhierarchie ou grappes

À vous de jouer

Ce plugin est en phase de test, bien que testé, vos retours et participation sont les bienvenues.

Notes

[1En fin d’import si la progression se fige, rafraîchissez la page

[2c’est le changement de l’auteur SPIP qui importe lors de la restauration qui provoque un arrêt par sécurité et demande de se reconnecter

Discussion

10 discussions

  • Bonjour,
    Je débarque sous spip et je dois migrer un wp dessus.
    J’installe bien le plugin mais il n’y a rien dans
    menu ’configuration / migration depuis wordpress’ lancer la conversion.
    Je suis sous spip 3.2.11

    Répondre à ce message

  • 1
    baizuo spip

    Le plugin à complètement changé mais Dans la doc RIEN, NADA même pas un début d’explication....

    Necessite « sale » qui n’est pas compatible SPIP3.3 en l’état

    Franchement faut qu’on m’explique quel est l’intérêt de mettre à jour un plugin existant et d’en changer entièrement le fonctionnement *SANS PRENDRE LA PEINE DE FAIRE 3 LIGNES DANS LA DOC* pour expliquer que dorénavant ça se passe en CLI et que cette doc n’as plus rien a voir avec le plugin actuel.

    Rien même pas un README.md sur le dépot...

    • Franchement faut qu’on m’expliquer quel est l’intérêt de raler sur l’incompatibilité d’un plugin avec une version de SPIP qui n’est pas encore officiellement sortie

      Franchement faut qu’on m’expliquer quel est l’interet pour des gens de se fatiguer à faire évoluer des plugins pour ce prendre ce genre de message en retour

      Franchement faut qu’on m’explique l’interet de raler plutot que de venir apporter sa pierre à l’édififce bénévole qu’est SPIP en proposant par exemple une mise à jour de la doc

    Répondre à ce message

  • 6

    ATTENTION ! Le plugin est affiché comme compatible avec SPIP 3 mais ce n’est pas le cas puisqu’il réclame la présence du plugin DUMP.xml, présent dans SPIP 2 et qui a été abandonné dans SPIP 3. If faut donc faire faire un import sur une base SPIP 2 et ensuite upgrader.

    • Salut, le plugin dump_xml compatible SPIP 3.0 existe bien, c’est juste qu’il n’est pas distribué en zip, cf :

      http://zone.spip.org/trac/spip-zone/browser/_plugins_/dump_xml

      En attendant de décider si ce plugin peut être diffusé en zip, tu peux le récupérer par svn, ou à l’aide de ce lien :

      http://zone.spip.org/trac/spip-zone/changeset/latest/_plugins_/dump_xml?old_path=/&format=zip

      ++

    • Voilà, je viens d’ajouter le plugin dump_xml à la liste des zips à générer :

      http://zone.spip.org/trac/spip-zone/changeset/93885

      Il sera bientôt disponible depuis la page de gestion des plugins l’espace privé.

    • Merci mais à chaque fois j’ai ce message :

      « • Le plugin Wordpress2SPIP dépend de DUMP_XML [1.0.1 ;] »

      Et quand je le télécharge il n’est pas compatible SPIP 3.1 donc inutilisable.

      Que fait-on dans ce cas-là ?

    • Bon je me réponds à moi-même.

      Ce plugin n’est pas compatible avec SPIP 3.1 parce que dump_xml ne l’est pas. Dans ce cas, essayer de passer par un SPIP 3.0. Là il peut être activé ainsi que dump machin. Une bonne chose de fait.

      Sauf que ça pose un autre problème avec un Wordpress 4 : il ne trouve tout simplement ni les articles, ni les rubriques, ni les auteurs, une paille quoi. J’ai vérifié, les tables en question ne sont pas vides !

      Je recommence une fois de plus au cas où !

    • Ça marche bien sous spip 2.1 pour l’import, ensuite je lance le nettoyage sous spip 3.0 et je fais la maj vers spip 3.1 :)

    • Oui mais avec ma version de Wordpress, une version 4 quelque chose, je n’y suis pas arrivée du tout après plusieurs essais.

      Donc j’ai procédé autrement et injecté la base de données de Wordpress dans celle de SPIP. J’explique le procédé en trois chapitres sur le site que j’ai passé sous SPIP justement.

      Bref il y a des solutions même quand les plugins ne fonctionnent pas.

    Répondre à ce message

  • 2

    Bonjour

    Est ce que certain on migré une version 3.5.1 de wordpress ou pas encore ?

    • Hello Pierre,

      je n’ai pas testé, mais cela devrait être rapide à faire.
      si c’est pas concluant, je mettrais à jour le plugin si c’est possible et pas trop chronophage.
      Sinon, il faudrai que je l’ajourne pour spip3... mais c’est pas pour demain.
      ++
      anic

    • Hello

      Je te dis cela dès que j’ai tester cela.
      Si je comprend comment il travail je le ferais pour la v3 de spip

    Répondre à ce message

  • 2

    Deux questions :
    1) Si je comprends bien, SPIP est téléchargé dans le répertoire www ? (Je suis sous OVH)
    2) Il y a aussi un fichier index.php sous OVH, comme sous SPIP. Si je les mets das le même répertoire, l’un va écraser l’autre...
    Merci de ta réponse.

    Philippe

    Répondre à ce message

  • 2

    Chapeau pour ce plugin !
    Très utile !

    J’ai un soucis avec les images liées à des albums, mais il faut que j’explore les plugins installés sur wordpress et que je prenne manuellement les fichiers liés je pense.

    Merci.

    • Bonjour,
      Merci pour ce retour...
      Quel plugin WP ou quelle est cette notion d’album ?
      Ou mieux, est-ce que cette notion est visible en B.D.D ?

      Ce plugin traite en effet les objets créés par défaut dans WP...

      Selon le volume d’information ou d’images à importer il existe sous SPIP des possibilités comme le dépôt de zip d’images sous /tmp/upload par exemple

    • Bonsoir,

      Oui, j’ai un plugin NextGEN Gallery sur WP qui gère mes galleries photos et crée des albums.
      Je n’ai pas vu si et comment je pourrais récupérer la médiathèque WP.

      Bien à vous....

    Répondre à ce message

  • Merci, je pense que je vais passer à SPIP pour mon site WPTheme, Wordpress devenant trop lourd et pas assez optimisé au niveau des temps de chargement.

    Merci, de la part d’un débutant sur SPIP :)

    Répondre à ce message

  • 6
    luciole135

    Bonjour,
    je tente de migrer de WordPress vers SPIP et j’ai tenté la procdure décrite ici, voilà les erreurs :
    12 Erreur(s) dans le squelette
    Numéro message squelette boucle Ligne
    1 Table SQL « wp_posts » inconnue ../plugins/wp2spip/inc/inc-stats-wp.html _post_publish 6
    2 Table SQL « wp_posts » inconnue ../plugins/wp2spip/inc/inc-stats-wp.html _pages 10
    3 Table SQL « wp_posts » inconnue ../plugins/wp2spip/inc/inc-stats-wp.html _post_documents 20
    4 Table SQL « wp_terms » inconnue ../plugins/wp2spip/inc/inc-stats-wp.html _tags 37
    5 Table SQL « wp_term_taxonomy » inconnue ../plugins/wp2spip/inc/inc-stats-wp.html _mots 56
    6 Table SQL « wp_terms » inconnue ../plugins/wp2spip/inc/inc-stats-wp.html _cat 75
    7 Table SQL « wp_term_taxonomy » inconnue ../plugins/wp2spip/inc/inc-stats-wp.html _joint_cat 73
    8 Table SQL « wp_usermeta » inconnue ../plugins/wp2spip/inc/inc-stats-wp.html _cherche_statut 97
    9 Table SQL « wp_users » inconnue ../plugins/wp2spip/inc/inc-stats-wp.html _users_wp 95
    10 Table SQL « wp_users » inconnue ../plugins/wp2spip/inc/inc-stats-wp.html _new_redac 122
    11 Table SQL « wp_comments » inconnue ../plugins/wp2spip/inc/inc-stats-wp.html _fils 139
    12 Table SQL « wp_links » inconnue ../plugins/wp2spip/inc/inc-stats-wp.html _sites 158

    Que dois-je faire ?
    Merci

    • luciole135

      Bon, je n’avais pas installé spip dans la bonne base de données, j’ai eu du mal à comprendre comment rentrer les données lors de l’install.
      Cette fois-ci il n’y a pas eu d’erreurs : Seulement quand je clique sur générer le fichier au format SPIP, j’ai cette erreur « Le système a rencontré une erreur lors de l’écriture du fichier ../tmp/dump/wp2spip.xml. Veuillez, en tant qu’administrateur du site, vérifier les droits d’écriture sur le répertoire tmp/dump. ».

      je continue de chercher...

    • luciole135

      Bon, je n’avais pas su créer le site spip dans la même table que celle de WordPress (en local), j’y suis arrivé.

      Désormais, tout à l’air d’aller bien, sauf que quand je clique sur « Générer le fichier au format SPIP », il apparaît l’erreur suivante : « Le système a rencontré une erreur lors de l’écriture du fichier ../tmp/dump/wp2spip.xml. Veuillez, en tant qu’administrateur du site, vérifier les droits d’écriture sur le répertoire tmp/dump. »

      Et là, je ne comprends rien car je suis en local, sous localhost et le dossier dump n’apparait pas dans tmp, je vais essayer de le créer. J’ai créé le dossier dump dans tmp et du coup cela a fonctionné.

      /tmp/dump/wp2spip.xml au format SPIP.

    • luciole135

      Le seul problème c’est que les images ne sont pas importées, car le short-code WordPress [caption] n’est apparemment pas géré !
      Quelqu’un sait-il comment importer toutes ses images (j’en ai plus de 400 !)
      merci

    • Bonjour,
      Viens de lire votre progression...
      Oui, le site WP doit être dans la même base de donnée, avec le préfixe par défaut wp_

      Installation de spip doit être ok, au sens droits sur les répertoires /tmp etc.

      Ce plugin convertit les post_type=attachment avec post_status=inherit en documents spip et les relie aux articles comme documents joints,

      Et dans mes imports, j’ai toujours eu dans la zone texte la balise img vers le document origal et cela m’a suffit.

      Je voudrais bien modifier le plugin pour qu’il marche dans ton cas.
      Pour cela il me serait utile de voir le code extact inséré.

      anic

    • luciole135

      Bonsoir et merci de votre réponse.

      Voilà à quoi ressemble un short_code [caption] ....[/caption] WordPress d’insertion de photo dans une page ou un article WordPress :

      [caption id=« attachment_4650 » align=« alignleft » width=« 150 » caption="Amphora
      Full Aroma rouge
      Additifs 10%« ]< img src= »http://localhost/wordpress/wp-content/uploads/Amphora-Full-Aroma-rouge-Additifs-10-150x150.jpg« alt= »Amphora Full Aroma rouge Additifs 10%« title= »Amphora Full Aroma rouge Additifs 10%« width= »150« height= »150« class= »size-thumbnail wp-image-4650" />[/caption]

      Rq : J’ai ajouté un espace entre le < et img sinon, le code n’apparait pas.

      le champs caption=« Amphora Full Aroma rouge Additifs 10% » correspond à la légende de la photo.
      le champs id=« attachment_4650 », correspond à l’ID de la table wp_post dans laquelle sont indiquées les données de la photo (considérée comme un article !).

      Ainsi, les balises laissent voir les photos, mais tout le reste apparaît en clair dans la page. Donc, la légende n’est plus visible et l’alignement à gauche n’est pas non plus géré.

      J’espère que cela vous aidera.

      Merci de votre travail.

    • Bonjour,
      Merci, je vais intégrer la gestion de « captions » dans le champ texte et revenir sous peu.

    Répondre à ce message

  • Bonjour,
    Merci, oui c’est discutable sur le format de sortie, tout comme le format d’entrée, (b.d.d.wp sur le même serveur), cela aurait pu être le dump xml de wordpress.

    Le dump xml de spip n’est pas réputé aussi fiable qu’un import sql.
    Mais cela relève de certains mécanismes qui ne sont pas utilisés par ce plugin.

    Le dump de SPIP 3 est en sql3,
    Il est parfois plus facile de réecrire un code que de le maintenir ou adapter.

    Pour moi l’xml reste utile, es squelettes du plugins peuvent facilement être adaptés

    Pour le besoin de passer wp vers spip 3.Rien n’empêche d’importer wp vers la 2.1.12, puis de monter traditionnellement vers SPIP3.

    Ce plugin est né suite à des demandes récurrentes d’import, à partir de vieux squelettes utilisés à la main, puis mis en plugin. Il répondais au besoiin de gagner du temps lors des imports sur des bases volumineuses.Testé plusieurs fois avec succès.

    Il m’aura permis de mieux comprendre la structure des données sous Wordpress. Et aussi de confirmer que ce n’est pas par habitude que je préfère SPIP.

    Répondre à ce message

  • Excellente idée, ce plugin !

    Dommage qu’il s’appuie sur le dump XML de SPIP, qui est connu pour être peu fiable, à tel point qu’il a été abandonné pour SPIP 3…

    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