Tutorial
Le principe de la migration est fort simple:
- On exporte les articles au format Movable Type via le skin que j’ai créé : _MtExport
- On nettoie le fichier généré.
- On l’importe dans WordPress via l’outil d’import
- On sourit
J’ai eu à créer un skin afin d’extraire le maximum de données du site. Des plugins précédents ne permettaient qu’une sortie partielle. J’ai essayé de calquer au maximum avec les spécifications du format Movable Type d’import/export.
_MtExport est capable de sortir :
- AUTHOR
- TITLE
- BASENAME
- DATE
- STATUS
- ALLOW PINGS
- ALLOW COMMENTS
- PRIMARY CATEGORY
- CATEGORY: (Toutes les autres)
- KEYWORDS: (les tags)
- BODY
Concernant les commentaires, ils sont préservés et les champs suivants sont extraits:
- COMMENT:
- AUTHOR
- DATE
- URL
- IP
Plutôt complet non ?
Alors, plongez-vous dans ce guide pour connaitre le reste et télécharger _MtExport
Préparation
Sauvegardez par le moyen qui vous convient votre base de données b2evolution et WordPress.
Essayez tant que faire ce peut de monter de version de b2evolution. _MtExport a été écrit pour la version 4.1.2
Désactivez les plugins qui s’insèrent dans la sortie de façon un peu trop violente. Je pense particulièrement aux plugins comme « Sociable », « Creative Common ». Ces plugins alourdissent considérablement la sortie avec quelque chose qui n’a absolument rien à voir avec l’article et que WordPress saura de toute manière régénérer.
Essayez aussi d’avoir un format de génération des url des pages que vous pourrez facilement réutiliser dans WordPress. J’utilisais le classique /<Année>/<Mois>/<Jour>/<Permalink> et vous verrez l’intérêt car mon skin exporte correctement le Permalink.
Skin
La première des choses à faire des de télécharger mon skin_MtExport et l’installer dans le répertoire « Skins » de b2evolution. Il suffit de décompresser l’archive et déposer le répertoire _MtExport.
[Téléchargement introuvable]Vous pouvez obtenir ou réutiliser ce projet sous licence CeCILL-B. Les sources sont disponibles sur github : https://github.com/FrenchW/MtExport
Puis, dans l’interface d’administration, activer ce nouveau plugin. Vérifiez que celui-ci fonctionne en vous rendant à l’url suivante : http://<votreBlog>/?tempskin=_MtExport
Si éventuellement votre blog compte plus de 500 posts, allez éditer le fichier « index.main.php » du plugin et augmentez la valeur à la ligne 3 (idem pour les commentaires) :
$MaxItems = 500;
Transfert des médias
Votre installation de b2evolution comporte normalement des images et médias uploadés au fil de la rédaction des articles. Si tout a été fait correctement, les fichiers doivent se trouver dans le répertoire suivant de b2evolution : /media/blogs/<NomBlog>/
Transférez ces fichiers et dossiers dans votre nouvelle installation de WordPress. Personnellement, je les ai mis dans /wp-content/uploads/old_b2/ pour ne pas les confondre avec l’arborescence que va créer WordPress.
Changement des liens
Une fois que vous avez obtenu l’exportation au format Movable Type via le lien http://<votreBlog>/?tempskin=_MtExport, il faut copier/coller le contenu dans un nouveau fichier texte que vous nommerez « mt-export.txt ».
Avec votre éditeur de texte préféré, faites rechercher/remplacer et modifiez tous les liens de média. J’ai donc, suite aux url que je vous ai donné, remplacé « /media/blogs/FrenchW/ » par « /wp-content/uploads/old_b2/ ».
Enregistrez le fichier en faisant très attention qu’il soit enregistré en encodage UTF-8. (j’ai eu des soucis avec l’ANSI que me sortait par défaut Textpad)
Nettoyer WordPress
Le script SQL suivant nettoie votre nouveau site WordPress de tout contenu « Article ». Il préserve uniquement les pages enregistrées et publiées !! Attention !!
TRUNCATE FW_wp_comments ; TRUNCATE FW_wp_commentmeta ; TRUNCATE FW_wp_postmeta ; DELETE FROM `FW_wp_posts` WHERE `post_type` <> 'page'; TRUNCATE FW_wp_terms ; TRUNCATE FW_wp_term_relationships ; TRUNCATE FW_wp_term_taxonomy ;
Sauvegardez votre base de données propre pour y revenir facilement.
Import dans WordPress
Finalement, on en vient à la partie la plus facile.
Commencez par recréer les comptes correspondants aux éditeurs qui vous aviez sur l’ancien blog.
Puis, allez dans Outils/Importer
Sélectionnez « Movable Type and TypePad » et acceptez de l’installer s’il n’est pas présent.
L’importeur vous demandera ensuite de lui donner le chemin du fichier mt-export. txt.
(A noter que s’il dépasse 1 Mo, je vous conseille d’aller le déposer dans le répertoire /wp-content/ du blog).
Il vous demandera en premier lieu de faire correspondre l’ancien éditeur avec un compte actif (ce qui est mieux que de le créer là, à la volée)
Passée cette étape, l’importeur va mouliner un petit peu, recréer catégories, tags et commentaire. Il est important d’avoir un WordPress absolument vide (voir script SQL) car sinon, il abonde tags et catégorie d’un numéro d’ordre pour ne pas les confondre avec l’existant.
Votre importation est terminée, vous avez normalement tout récupéré et avez migré sans douleur de b2evolution à WordPress.
Refaites une sauvegarde si le résultat vous convient et si vous êtes content (ou pas d’ailleurs… commentez 😉 )