Dotclear vers Wordpress

soldiez
WRInaute discret
WRInaute discret
 
Messages: 216
Inscription: 7 Fév 2009

Dotclear vers Wordpress

Message le Ven Juin 03, 2011 10:51

bonjour,

nous avons un blog qui tourne sous DotClear 2.1.1 depuis 2006 et qui compte plus de 300 articles et 270 commentaires. nous aimerions faire évoluer ce blog vers Wordpress. comment puis je m'y prendre pour converser l'ensemble des noto de chaque page ? j'ai opté à l'heure actuelle pour un petit passe au Xenu, export du rapport généré, mais après ? comment réussir à mettre mes articles d'un dotclear à un wordpress ? j'ai tenté plusieurs solution via l'outil d'export/import mais ça n'a pas l'air très au point !

si quelqu'un à une solution... :D

d'avance merci...


UsagiYojimbo
WRInaute accro
WRInaute accro
 
Messages: 8575
Inscription: 23 Nov 2005

Re: Dotclear vers Wordpress

Message le Ven Juin 03, 2011 10:55

L'outil d'import/export marche très bien à ce niveau, pour peu que tu n'ais pas trop de plugin qui soit venu s'insérer dans le process de création de contenu. Perso je suis sur une problématique du genre avec mon www, mais je suis forcé de mettre en plus les mains dans le cambouis étant donné que j'ai beaucoup bidouillé mon Dotclear a la mano.


cedric_g
WRInaute accro
WRInaute accro
 
Messages: 3552
Inscription: 18 Jan 2006

Re: Dotclear vers Wordpress

Message le Ven Juin 03, 2011 13:47

Bonjour

Pour ma part j'ai migré mon "vieux" Dotclear (qui était en 1.2.6 !) vers WP en octobre dernier, avec très grand bonheur... mais aussi pas mal de difficultés !

J'avais à cette époque +430 articles et +5000 commentaires ; comme j'avais beaucoup "tuné" mon Dotclear, j'ai du au final retoucher 70% des articles un par un :roll:

Pour la réécriture, j'ai eu la chance d'avoir été en version 1.2.x à l'époque, ce qui m'a permis de les gérer quasi automatiquement en une ligne de htaccess (ça a été par contre sensiblement plus compliqué pour les pages d'archives !)

J'avais utilisé l'import/export.

soldiez
WRInaute discret
WRInaute discret
 
Messages: 216
Inscription: 7 Fév 2009

Re: Dotclear vers Wordpress

Message le Ven Juin 03, 2011 16:11

vais je devoir me faire du copie / colle de chaque article ? j'aurais bien aimé conserver les commentaires également...
jusqu'à maintenant j'ai tout essayé niveau import / export et ça plante à un moment donné... :evil: saloperie de dotclear...


UsagiYojimbo
WRInaute accro
WRInaute accro
 
Messages: 8575
Inscription: 23 Nov 2005

Re: Dotclear vers Wordpress

Message le Ven Juin 03, 2011 16:33

@cedric_g : je suis intéressé par la ligne que tu as mis en htacces. Ca signifie que lors de l'import tu as réussi à conserver les id de post ?

soldiez
WRInaute discret
WRInaute discret
 
Messages: 216
Inscription: 7 Fév 2009

Re: Dotclear vers Wordpress

Message le Ven Juin 03, 2011 18:08

UsagiYojimbo a écrit:L'outil d'import/export marche très bien à ce niveau

lorsque j'exporte, ça me fait un fichier txt. sous dotclear je m'importe de quelle manière ce fichier dans wordpress ? il ne propose aucun import en txt. d'autre part, les images du coup, ne sont plus sur le bon chemin... comment y remédier ? :mrgreen:


padadam22
WRInaute accro
WRInaute accro
 
Messages: 2705
Inscription: 23 Oct 2010

Re: Dotclear vers Wordpress

Message le Ven Juin 03, 2011 18:17



UsagiYojimbo
WRInaute accro
WRInaute accro
 
Messages: 8575
Inscription: 23 Nov 2005

Re: Dotclear vers Wordpress

Message le Ven Juin 03, 2011 18:47

Pour les images, tu peux utiliser le plugin Cache Image


padadam22
WRInaute accro
WRInaute accro
 
Messages: 2705
Inscription: 23 Oct 2010

Re: Dotclear vers Wordpress

Message le Ven Juin 03, 2011 18:49

Au pire pour les images, tu peux toujours changer à la mano dans le fichier SQL, y'en a pour 2 secondes de rechercher/remplacer. ;)


cedric_g
WRInaute accro
WRInaute accro
 
Messages: 3552
Inscription: 18 Jan 2006

Re: Dotclear vers Wordpress

Message le Sam Juin 04, 2011 12:18

UsagiYojimbo a écrit:@cedric_g : je suis intéressé par la ligne que tu as mis en htacces. Ca signifie que lors de l'import tu as réussi à conserver les id de post ?



(j'avais oublié que j'avais abandonné la solution du htaccess :mrgreen: mais ça revient au même !)



Je n'ai pas conservé les ID mais j'ai conservé les mêmes URL réécrites :)

En fait l'astuce consiste justement à virer la notion de date et d'ID pour ne préserver que la partie texte des liens.

Par ex. on passe de
blog.example.com/?2010/05/24-125-ceci-est-le-titre

vers

blog.example.com/ceci-est-le-titre/

Pour ma part j'ai utilisé une réécriture spécifique codée en PHP dans le header.php de mon thème :

Code: Tout sélectionner
<?php
   // Fonction retournant vrai si $texte commence par $recherche
   function startswith($texte, $recherche) {
      return substr($texte, 0, strlen($recherche)) === $recherche;
   }
   
   /***** Réécriture manuelle des anciennes URL (format Dotclear 1.2.6) *******************************************/
   
   // Lecture des variables serveur
   $server_name = $_SERVER['SERVER_NAME'];   // Nom du "serveur"
   $sURL=$_SERVER["QUERY_STRING"];         // Querystring (ce qu'il y a après le "?")
   
   // Gestion des tags
   if(startswith($sURL,'tag/')) {
      $sTag=explode('/',$sURL);
      header('HTTP/1.1 301 Moved Permanently', false, 301);
      header("Location: http://" .$server_name."/tag/".$sTag[1]);
      exit();
   }

   // Gestion de la table des matières
   if(startswith($sURL,'toc/')) {
      header('HTTP/1.1 301 Moved Permanently', false, 301);
      header("Location: http://" .$server_name."/plan-du-site/");
      exit();
   }
   
   // Gestion des catégories (spécifique au blog !)
   if(startswith($sURL,'News')) {
      header('HTTP/1.1 301 Moved Permanently', false, 301);
      header("Location: http://" .$server_name."/articles/actualites/");
      exit();
   }
   elseif(startswith($sURL,'Photographies')) {
      header('HTTP/1.1 301 Moved Permanently', false, 301);
      header("Location: http://" .$server_name."/articles/photographies/");
      exit();
   }
   elseif(startswith($sURL,'Reportages')) {
      header('HTTP/1.1 301 Moved Permanently', false, 301);
      header("Location: http://" .$server_name."/articles/reportages/");
      exit();
   }
   elseif(startswith($sURL,'Techniques')) {
      header('HTTP/1.1 301 Moved Permanently', false, 301);
      header("Location: http://" .$server_name."/articles/techniques/");
      exit();
   }
   elseif(startswith($sURL,'Nature')) {
      header('HTTP/1.1 301 Moved Permanently', false, 301);
      header("Location: http://" .$server_name."/articles/nature-environnement/");
      exit();
   }
   elseif(startswith($sURL,'Coups-de-coeur')) {
      header('HTTP/1.1 301 Moved Permanently', false, 301);
      header("Location: http://" .$server_name."/articles/coups-de-coeur/");
      exit();
   };
   
   // Gestion des billets
   $reg="/^\d{4}\/\d{2}\/\d{2}\/\d+-.+/";
   if(preg_match($reg,$sURL)) {
      // Décomposition
      $newURL=substr(strstr($sURL,'-'),1,strlen(strstr($sURL,'-'))-1);
      header('HTTP/1.1 301 Moved Permanently', false, 301);
      header("Location: http://" .$server_name."/$newURL");
      exit();
   }
   
   // Gestion des archives chronologiques
   // Jour
   $reg="/^\d{4}\/\d{2}\/\d{2}/";
   if(preg_match($reg,$sURL)) {
      // Décomposition
      header('HTTP/1.1 301 Moved Permanently', false, 301);
      header("Location: http://" .$server_name."/$sURL/");
      exit();
   }
   // Mois
   $reg="/^\d{4}\/\d{2}/";
   if(preg_match($reg,$sURL)) {
      // Décomposition
      header('HTTP/1.1 301 Moved Permanently', false, 301);
      header("Location: http://" .$server_name."/$sURL/");
      exit();
   }
   // Année
   $reg="/^\d{4}/";
   if(preg_match($reg,$sURL)) {
      // Décomposition
      header('HTTP/1.1 301 Moved Permanently', false, 301);
      header("Location: http://" .$server_name."/$sURL/");
      exit();
   }

?>



Comme tu peux le voir, j'ai géré les catégories de manière très spécifique, ainsi que ma "table des matières" (j'utilisais un plugin idoine) ; idem pour les tags. Pour les billets, une bonne vieille expression régulière fait l'affaire ;)

Ça fonctionne nickel et je trouve ça plus simple que de bidouiller le htaccess (déjà conséquent sur mon blog !)


Marie-Aude
Modérateur
Modérateur
 
Messages: 11883
Inscription: 5 Juin 2006

Re: Dotclear vers Wordpress

Message le Sam Juin 04, 2011 12:26

la structure sans la date en début d'url a aussi le gros avantage dans wordpress de pouvoir facilement interdire via le robots.txt l'indexation des archives calendaires


cedric_g
WRInaute accro
WRInaute accro
 
Messages: 3552
Inscription: 18 Jan 2006

Re: Dotclear vers Wordpress

Message le Dim Juin 05, 2011 17:47

Exact ;)

(d'ailleurs je viens de prendre conscience, comme je l'ai interdit de toute façon sur mon blog, que les "anciennes" pages étaient redirigées de manière... inutile !)


soldiez
WRInaute discret
WRInaute discret
 
Messages: 216
Inscription: 7 Fév 2009

Re: Dotclear vers Wordpress

Message le Mer Juin 08, 2011 10:28

merci ;)


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités