Yes You Web !

Publié le 5 mai 2018

Vous avez peut-être créé votre premier blog sur la plateforme blogSpirit et aujourd’hui, vous avez envie de le migrer vers WordPress qui vous offre davantage de possibilités ?

Si vous avez un petit blog, vous pouvez toujours copier / coller vos articles et images à la main. Dans cet article, nous vous expliquons comment faire la migration, étape par étape, pour de gros blogs. Certaines d’entres elles sont un peu fastidieuses mais ne paniquez pas et suivez-les point par point.

1. Demander le fichier d’export

Tout d’abord, vous devez demander à blogSpirit le fichier d’export de votre blog. Ils vous enverront un dossier zippé. Dézippez-le dossier et vous obtenez un fichier texte qui comprend les informations suivantes :

  • Auteur de l’article
  • Titre
  • Statut
  • Date et heure
  • Nombre de commentaires
  • Contenu de l’article
  • Catégories et les tags
  • Commentaires avec le nom des auteurs, la date et les réponses.

Dans ce fichier, il n’y a aucune image. Ce qui va poser problème par la suite mais chaque chose en son temps.

2. Importer le fichier dans WordPress

Partons du principe que vous avez déjà créé votre blog WordPress. Si vous ne savez pas comment faire, vous pouvez lire notre article Créer un blog de voyage avec WordPress en 3 étapes.

Votre blog WordPress créé, il s’agit maintenant d’importer les articles que vous aviez chez blogSpirit.
Dans la colonne de gauche de WordPress, allez dans Outils / Importer. Vous voyez une liste d’outils, allez sur celui qui s’appelle Movable Type et TypePad et cliquez sur Installer.

Yes You Web !

Une fois l’installation faite, cliquez sur Lancer l’importateur. Sélectionnez votre fichier texte dézippé dans l’étape précédente et cliquez sur Envoyer le fichier et l’importer.

Yes You Web !

Selon la taille du fichier, cela peut prendre un peu de temps, laissez tourner sans chercher à rafraîchir la page. Un fois l’opération terminée, vous arrivez sur un écran qui vous demande d’assigner vos articles à un utilisateur WordPress. Si vous n’avez pas créé le bon utilisateur, ne vous inquiétez pas, nous pourrons modifier cela en masse par la suite.

Yes You Web !

Et voilà, c’est terminé ! Si vous allez dans Articles dans la colonne de gauche, vous allez retrouver tous vos articles avec leurs catégories, leur statut (notamment les brouillons) et tout ce qui va bien.

3. Traiter le problème des auteurs

Vous avez des articles avec plusieurs auteurs et lorsque vous avez réalisé l’import, vous n’avez pas pu segmenter les articles par nom d’utilisateur WordPress. Nous allons pouvoir assez facilement réattribuer le bon nom d’auteur aux articles concernés.

Tout d’abord, dans la colonne de gauche de WordPress, allez dans Utilisateurs / ajouter : vous allez créer des comptes pour chaque auteur d’article.

Ensuite, cliquez sur Articles / Tous les articles, toujours dans la colonne de gauche de WordPress. Sélectionnez les articles que vous souhaitez attribuer au 1er auteur en les cochant ou en utilisant un filtre puis dépliez la liste déroulante « actions groupées ».

Yes You Web !

Sélectionnez Modifier et cliquez sur Appliquer. Une fenêtre s’ouvre :

Yes You Web !

Sélectionnez l’auteur et cliquez sur Mettre à jour. Selon le nombre d’articles concernés, cela peut prendre un peu de temps.

Attribuer les bons auteurs leur permet de recevoir les commentaires écrits sur leurs articles et d’y répondre.

4. Traiter le problème des images

Bon, cela commence à ressembler à quelque chose. Mais on a un énorme problème à régler encore. Les images n’ont pas été importées donc, si vous faites un clic droit sur une image dans l’un de vos articles, vous allez voir qu’elle pointe vers l’ancien blog, c’est là-bas qu’elle est encore hébergée. Ce qui signifie que le jour où vous résiliez votre abonnement blogSpirit, elles disparaîtront. Alors là, nous avons trouvé une méthode qui fonctionne mais il y en a certainement d’autres… Nous sommes dans un cas où nous avons migré 1 300 articles donc remplacer toutes les images à la main, c’est l’enfer !

Extraire les URLs médias du fichier d’export

Si vous ouvrez votre fichier d’export avec bloc-notes ou notepad++, vous allez repérer les URLs des images, elles sont du format : http://nom.blogspirit.com/media/01/02/c724d52566.jpg. Notre fichier a 110 000 lignes pour 1300 articles. On ne va donc pas nettoyer ce fichier à la main alors on a cherché et on a trouvé ce site : www.browserling.com/tools/extract-urls.

Avec un simple Ctrl+A, sélectionnez tout le contenu de votre fichier texte d’export et collez-le dans le bloc du site prévu à cet effet (si votre fichier est gros, patientez un peu après avoir fait votre « Coller », c’est un peu long).

Yes You Web !

Puis cliquez sur le bouton Extract Links et en quelques secondes, vous obtenez la liste de toutes les URLs contenues dans votre fichier. Copiez / collez ce résultat dans un fichier excel et faites un tri alphabétique. Vous pouvez supprimer de cette liste toutes les URLs vers des sites extérieurs (des liens que vous auriez fait vers des sites partenaires). Séparez ensuite dans 2 feuilles du fichier excel, les URLs contenant le mot Media et les autres (nous les traiterons dans le paragraphe suivant). Nettoyez un peu les URLs si besoin, nous, nous avons dû retirer un guillemet à la fin de l’URL. Vous pouvez utiliser la fonction Remplacer dans Excel.
Le résultat que vous devez obtenir est une belle liste d’URLs, 1 par ligne. Nous, nous en avons récupéré 3317.

Yes You Web !

Aller chercher les images

Il existe un plugin WordPress qui vous permet d’aller chercher vos images pour les rapatrier dans votre bibliothèque WordPress. Téléchargez et installer le plugin External Media Upload.

Activez-le. Vous allez alors le voir apparaître dans la colonne de gauche dans le menu Médias. Ouvrez-le :

Yes You Web !

Collez vos URLs d’images. Vous pouvez aussi régler le timeout dans l’onglet Options. Nous avons procédé 300 par 300 pour éviter un plantage de masse. Pour chaque image, vérifiez bien le statut « Uploaded successfully » dans la colonne de résultat.
Une fois que vous avez terminé l’opération, rendez-vous dans la bibliothèque Médias, vous voyez toutes vos images.

Dans notre cas, elles ont été importées en .jpeg alors qu’elles étaient en .jpg ou .JPG au départ. Plutôt que de remplacer les extensions dans la base de données, nous avons extrait le fichier upload par FTP, avons renommé les extensions par une invite de commande et avons replacé le fichier via FTP.

Remplacer les noms dans la base de données

Vous avez :

  • d’un côté des images avec un lien du style http://nom.blogspirit.com/media/01/02/c724d52566.jpg
  • d’un autre côté des images WordPress avec une URL http://www.nomblog.com/wp-content/uploads/2018/02/c724d52566.jpg.

Avant de commencer cette étape, surtout faîtes une sauvegarde !! Nous allons faire une mise à jour en masse des URLs des images dans la base de données. Pour ce faire :

  • Téléchargez le dossier Search-Replace-DB-master en cliquant ici
  • Dézippez-le et placez-le avec votre FTP à la racine de votre site
  • Ensuite, entrez cette URL, en remplacant monsite.com par l’URL de votre nom de domaine : http://www.monsite.com/Search-Replace-DB-master/
  • La fenêtre suivante apparaît dans votre navigateur :

Yes You Web !

Les champs Database sont automatiquement remplis d’après votre fichier wp-config.php.

  • Dans Search / replace, saisissez vos URLs : replace http://nom.blogspirit.com/media/01/02 with http://www.nomblog.com/wp-content/uploads/2018/02. Ne mettez le / à la fin de vos URLs. Attention, dans votre fichier excel, vous pouvez avoir plusieurs « dates » : 01/02, 00/01… donc il faudra faire le remplacement pour chaque groupe. Pour 3317 images et un blog de 10 ans, nous avons dû faire l’opération 7 fois.
  • Cliquez sur Dry run pour faire un test. Cela ne changera rien dans la base de données mais vous verrez ce qui sera potentiellement remplacé.
  • Si tout est correct et que vous avez bien vérifié vos URLs, cliquez sur Live run. Au pire du pire, on a notre sauvegarde s’il y avait le moindre problème.
  • Retirez surtout le fichier Search-Replace-DB-master quand vous avez fini sinon des gens mal-intentionnés pourraient s’amuser à mettre la pagaille dans votre site.

Ca y est, les images qui se trouvent dans vos articles sont hébergées chez WordPress, pfiou….
Si vous avez besoin de définir des images mises en avant pour vos articles, vous pouvez lire notre article Comment générer des Images mises en avant en masse.

5. Traiter le problème des liens internes dans les billets

Vos articles pouvaient contenir des liens externes, c’est à dire vers des sites extérieurs, mais également un lien vers un autre article du blog, ce qu’on appelle le maillage interne. Alors là, nous n’avons pas trouvé de solution miracle car le format d’URL des billets blogSpirit est très différent du format WordPress, même le permalien ne correspond pas.

Nous avons donc décidé d’intervenir dans la base de données avec Search-Replace-DB-master et de remplacer les URLs comme suit : replace http://nom.blogspirit.com/archives with http://www.nomblog.com/.

Cela génère des pages en erreur 404 donc nous avons mis le plugin 404 to 301 pour rediriger tous ces liens vers la home de notre blog. Si vous avez trouvé mieux, dites-nous…

Conclusion

Voilà, nous espérons que cet article vous aura aidé à migrer votre blog sans trop vous arracher de cheveux.
Si vous avez des questions, posez-les en commentaires ci-dessous.
Et n’hésitez pas à partager vos propres retours d’expérience !