Infobidouille

Migration de Dotclear à WordPress

Je viens d’importer sur ce blog tous les billets de mon ancien blog «geekeries», qui était jusqu’à présent sous Dotclear. Vous retrouverez donc tous ces anciens billets dans les archives. J’en profite pour faire un petit billet expliquant la procédure à suivre.

Tout d’abord, j’ai commencé par créer un deuxième blog WordPress. Cette étape n’est pas indispensable, mais j’ai préféré procéder ainsi pour ne pas pourrir ce blog en cas de problème lors de l’import. La création de ce second blog est aussi utile si le blog Dotclear source et le blog WordPress destination sont sur deux serveurs distincts sans possibilité pour le second de se connecter directement à la base de données du premier.

Sur ce second blog, j’ai installé le plug-in Dotclear 2 Importer. Pas bien compliqué à utiliser, ce plug-in nécessite juste de spécifier différents informations pour l’accès à la base de données de Dotclear (serveur, nom d’utilisateur, mot de passe, nom de la base, préfixe des tables, encodage des caractères), puis procède à l’import des utilisateurs, des catégories, des billets et des commentaires.

Ensuite, il faut prévoir de faire une passe sur tous les billets, pour corriger diverses choses :

Une fois satisfait du résultat, il ne me reste plus qu’à faire un export de ce blog au format WXR (Outils > Exporter) pour le réimporter ensuite sur le blog destination (Outil > Importer). Et voilà !

En complément, voici un petit bout de PHP qui permet de mettre en place une redirection automatique des billets de l’ancien blog Dotclear vers le blog WordPress, en se basant sur le titre du billet (l’URL ayant pu changer, notamment si elle contenait des accents), en remplaçant le fichier index.php de Dotclear :

Seuls les billets et les flux de syndication seront redirigés, le reste ne l’est pas, ce qui évitera par exemple de perdre les pages de mots clés (les mots clés ne sont pas récupérés par le plug-in d’importation). Si aucune correspondance n’est trouvée pour un billet, il sera affiché dans Dotclear et un mail d’avertissement sera envoyé.