Et bien me revoici au source :D

Depuis quelques temps je surveillais de très prêt l'avancement de dotclear 2 et cette nui j'ai craqué :)

Je vais donc vous expliquer comment passer de wordpress à dotclear sur un hébergement free ;)

Il faut savoir que Free n'accepte pas le module innodb ce qui est requis pour cette version 2, donc il vous faut l'installer sur postgrsql. en sacrifiant votre base MySql :)

Donc pour cette migration il vous faut un serveur avec base postgrsql pour pouvoir convertir en dernier plan votre base de données mysql en postgrsql.

Personnellement j'ai tenté avec Xampp, mais le module postgrsql est plus que merdique :( , par chance j'avais un serveur sous la main qui ma permis cette dernière manipulation, bien que j'ai perdu tout les commentaires et les smilies :(

Donc passont au chose sérieuses ^^ , il vous dans un premier temps basculer votre base de donnée wordpress en dotclearn pour celà rien de plus facile, car Mathieu Delestre nous fait partager sur son blog un convertisseur qui fonctionne à merveille :p

Mais avant de se lancer dans la conversion, il faut modifier Xampp le fichier my.conf si vous le faite en local .

Donc éditez my.conf et commenté la ligne
skip-innodb

Puis lancez l'installation de dotclear, une erreur vous est renvoyer telle que :

Le moteur d'expressions rationnelles PCRE ne gère pas les chaînes UTF-8.

Il vous faut télécharger le fichier check.php qu'il faut télécharger et remplacer dans votre installation à cet emplacement : /dotclear/admin/install


Et le tour est joué vous avez enfin installé le beau petit bijou dotclear

Bien entendu vous ajoutez la base de votre blog wordpress sur la base de dotclear avec le dossier wordpress sur le ftp mais dans un autre dossier ^^

Puis pour l'export, vous téléchargez le script wp-flatexport de matihieu que vous éditez afin de la configurer pour qu'il accède à votre fichier config et votre base mysql.

Voici la manipulation

        1.  récupérer le fichier wp-flatexport-php.txt

        2.  le renommer en wp.flatexport.php

        3.  l'ouvrir pour modifier les lignes suivantes :
            // prefix des table de wordpress...
            $wp_prefix = 'votre prefix';
           
            // id du blog dotclear
            $blog_id = 'votre id dotclear que vous trouverez dans l'administration ( d'origine il s'appel defautl )';
           
            //Chemin vers la racine de dotclear depuis la racine de wordpress (pas obligatoire ça sert à générer le fichier d'export pou qu'il soit accessible directement via la liste déroulante                 du menu d'import de dotclear)
            $path2dotclearPublic = '../dotclear2/public'; // sans / à la fin

        4. copier le fichier à la racine de wordpress

        5. vous l'executer, et là le script aura créé un fichier backup dans le dossier public de dotclear

        6. Vous vous rendez dans l'administration de dotclear, sur le plugin import/export et vous importez le backup et vous avez récupérez toutes vos données :)


Après ça se corse pour les personnes sous free, car il va falloir convertir votre base de données mysql len postgrsql.

Donc pour celà vous récupérer le script en python mysql2postgrsql :
http://freshmeat.net/projects/mysql2pgsql/
Ensuite vous le rendez exécutable
chmod +x mysql2pgsql.pl

faire un dump de la base mysql :
mysql2pgsql dumpmysql.sql > dumppg.sql

 
puis exécuter les requêtes contenues dans le fichier résultant dumppg.sql dans une base de données postgres :
psql -f dumppg.sql -d nouvellebasepg

sous debien, le serveur que j'ai utilisé j'ai installé pour cette manipulation les dépôts :
apt-get install  libdbd-pg-perl libdbi-perl

Et le tour est joué, ensuite vous installé dotcleat sur votre base postgrsql que free vous à mis en place puis vous exportez les données de fichier resultant

Et ça vous donne le blog que j'viens de mettre en place ;)