Première étape : import du site

Ce tutoriel nécessite que vous ayez transféré votre blog sur dotclear à partir du flux RSS de votre blog spip. Valery l'explique dans son article sur le Passage de spip à dotclear : Le plus simple semble devoir être d’utiliser le fil RSS. Une simple modification dans le squelette backend de Spip permet de créer un fichier RSS listant l’intégralité des articles du site. Ceux-ci sont directement intégrés dans la base de Dotclear, avec la mise en forme et les images (mise à jour : en fait les images ne sont pas importées dont si le site d’origine est fermé elles sont perdues…). Vous perdez quasiment tout : images, commentaires, catégories, etc...

Deuxième étape : recréer les catégories

Très sincèrement, pour le faire proprement, voilà ce que j'ai fait.

  • Dans PHPMyAdmin, j'ai effectué la commande suivante :

SELECT DISTINCT meta_id FROM dotclear_meta

Vous voyez apparaître la liste des anciennes catégories utilisées dans spip.

  • Dans l'interface d'administration de dotclear, allez dans catégories. Et... récréez à la main toutes les catégories, en faisant de beaux copié-collés. ATTENTION, vous devez respecter les noms des catégories : ne changez pas la moindre lettre, sinon ça ne marchera pas.

Troisième étape : lister les catégories

  • Dans PHPMyAdmin, créez une table temp avec deux colonnes IDCAT, et IDPOST (tous deux entiers de taille 4).
  • Dans l'onglet SQL, lancez la commande suivante :

INSERT INTO temp( idcat, idpost ) ( SELECT a.cat_id, b.post_id FROM dotclear_category a, dotclear_meta b WHERE b.meta_id = a.cat_title)

Quatrième étape : changer les catégories de chaque article

Utiliser la commande :

UPDATE dotclear_post, temp SET cat_id = temp.idcat WHERE post_id = temp.idpost

Dernière étape : vérification et nettoyage

Après avoir vérifié que les articles sont bien placés dans les bonnes catégories, vous pouvez supprimer tous les tags, qui ne servent plus à rien. Pour ceci, il vous suffit de vider la table dotclear_meta.

Voilà, j'espère que j'aurai aidé mon prochain. Si jamais vous ne comprenez pas une des étapes, ou si vous rencontrez un souci lors de la réalisation de ce tutoriel, n'hésitez pas à tout me raconter dans les commentaires.