migration hautetfort vers wordpress (Créer un compte)

  • Statut : non résolu
15 sujets de 1 à 15 (sur un total de 15)
  • Auteur
    Messages
  • #458847
    juan_rico
    Membre
    Initié WordPress
    20 contributions

    Bonjour,

    Ma configuration WP actuelle
    – Version de WordPress : 2.5
    – Thème utilisé :
    – Plugins en place :
    – Nom de l’hebergeur :
    – Adresse du site :www.avenirdufutur.fr

    Problème(s) rencontré(s) :

    Je viens de créer un blogue wordpress, http://www.avenirdufutur.fr , et je souhaiterais y importer mon ancien blogue chez hautetfort.

    Comment faire, sachant qu’avec hautetfort, je n’ai pas accès à la base de données, et je ne peux pas avoir un flux rss regroupant tout le blogue ?

    Merci pour vos réponses !

    #627683
    Comme une image
    Participant
    Maître WordPress
    2493 contributions

    Eh eh eh eh !!!
    J’ai passé beaucoup de temps pour effectuer cette migration et j’y suis arrivé, mais ça valait la peine (plus de 400 billets et plus de 7000 commentaires).

    Je suis passé par les étapes suivantes :
    1/ Récupération du contenu de mon blog H&F sur mon disque dur avec HTTrack.
    2/ Mise au point d’une moulinette de conversion des billets + commentaires H&F en billets WP.
    3/ Validation de l’ensemble sur une version locale de WP (que je fais tourner avec Wamp)
    4/ Mise en maintenance du blog WP, récupération de la base WP de production et installation en local, lancement de la moulinette, reimportation de la nouvelle base complète en production (grosses grosses sueurs à ce moment-là !!! ça n’a pas marché du premier coup)
    5/ Transfert sur WP de production, dans un répertoire spécifique, de la librairie de média (pour que toutes les illustrations proviennent de mon site WP et pas de H&F)
    5/ Retouches manuelles sur certaines URL que la moulinette n’avait pas su traiter

    LIMITES :
    Bien que ce soit théoriquement possible, puisque l’on accède à ces données via l’interface d’administration H&F, je n’ai pas tenter de récupérer pour la « base de commentaires » les adresses IP et les adresses courriel des commentateurs (puisque ces données n’apparaissent pas sur la partie publique du site et que je ne me suis basé que sur ces informations pour mon importation.

    PRÉ-REQUIS :
    Comme je n’ai absolument pas l’envie de transformer (et encore moins de maintenir) cet outil artisanal en un outil « user friendly » (genre : une extension d’importation dédiée), si tu veux profiter de mon expérience, il faudra que tu acceptes de tremper un peu ta chemise pour apporter à mes scripts les personnalisations nécessaires pour ton blog. Ça te demandera donc des connaissances PHP (pas élevées, à vrai dire, moi j’ai un commencé à apprendre PHP en mettant au point ce script ! Mais je savais programmer), en SQL.

    Alors ? Tu as le courage de te lancer dans l’aventure ? :wp:

    #627684
    Comme une image
    Participant
    Maître WordPress
    2493 contributions

    Ah ! Je viens de voir ton (joli) nouveau site, mais j’ajoute une condition à mon offre de collaboration ! Que tu supprimes cette horreur de 123compteur.com :fouet: qui balance de la pub à tes visiteurs, et que tu le remplaces par une des nombreuses extensions WP qui t’offriront le même service en mieux et sans pub.

    (Personnellement, je ne saurais pas te guider dans ce choix, je considère que ces compteurs publics ne servent généralement à rien et je n’en utilise donc pas.)

    #627685
    juan_rico
    Membre
    Initié WordPress
    20 contributions

    Merci comme une image pour ta réponse. Je vais t’écouter et changer de compteur. Je suis intéressé par l’aventure. Je vais t’écrire en privé !

    Encore merci pour cette réponse !

    #627686
    juan_rico
    Membre
    Initié WordPress
    20 contributions

    Je tiens à remercier Comme Une image qui m’a permis de réaliser la migration de mon site hautetfort vers wordpress, grâce à son programme en php.
    Voici ci-joint une procédure que nous avons réalisée conjointement.

    Migration d’un site haut et fort vers wordpress, 
    à l’aide de l’utilitaire importation-hetf.php de Jérôme.

    1. Avant-propos
    La procédure qui va être décrite ci-dessous vous permet de récupérer le contenu d’un blog rédigé sur la plateforme hautetfort (ou blogspirit, qui utilise le même logiciel) pour le réinjecter dans un blog Wordpress éventuellement déjà démarré. Les articles et commentaires importés vont donc pouvoir se rajouter aux articles et commentaires déjà existants, et non s’y substituer
    2. Mises en garde
    Attention ! Contrairement aux utilitaires de migration fournis par Wordpress, cette méthode « artisanale » souffre de plusieurs défauts :
    1. Elle nécessite, de la part de son utilisateur, un minimum de compétences informatiques notamment en base de données (SQL) et en programmation PHP, pour être capable de traiter les éventuels aléas qui pourraient surgir
    2. Cette procédure a été initialement développée par un béotien en matière de Wordpress et de PHP (ayant toutefois quelques compétences en informatique, je vous rassure). En conséquence, le code est fonctionnel mais un peu « bourrin ». Le contenu migré est inséré en base directement par des ordres SQL au lieu d’utiliser d’éventuelles API Wordpress, qui auraient permis à ce code une plus grande stabilité avec les évolutions Wordpress. Initialement développée pour une version WP2.3, elle montre déjà quelques faiblesses avec WP2.5. Si un développeur veut reprendre le flambeau, il est le bienvenu !
    3. À cause des défauts ci-dessus, elle nécessite donc d’être adaptée à votre propre besoin. Le processus décrit ci-dessous est celui de la migration finale. Nous ne saurions trop vous recommander de procéder auparavant à ce que l’on appelle des « tirs à blanc », pour vérifier que la procédure fonctionne.

    3. Pré-requis
    Outre les quelques compétences indiquées ci-dessus, vous aurez besoin, pour effectuer la migration depuis Windows, des outils suivants :

    – WinHTTrack, http://www.httrack.com , afin d’importer sur votre disque dur l’ensemble du site, avant de le convertir pour wordpress.
    – Wamp, pour pouvoir faire tourner une version locale de wordpress.
    – Le plugin maintenance mode pour wordpress http://wordpress.org/extend/plugins/maintenance-mode/

    NB : des équivalents de ces outils existent sans doute sur les plateformes Linux ou Mac. Les auteurs n’étant pas spécialistes de ces plateformes, nous ne détaillerons ici que le processus sous Windows, mais il est probablement transposable.

    La migration consistera à :
    – aspirer les données du site haut et fort
    – installer une version locale de wordpress
    – importer le contenu du site wordpress en production dans le wordpress local
    – convertir le contenu provenant de hautetfort et à l’injecter dans le worpress local
    – migrer le contenu du wordpress local dans le wordpress de production.

    4. Importation en local du site haut et fort

    Le but de cette phase est d’aspirer le contenu de votre site haut et fort à l’aide du logiciel Httrack pour en faire une réplication locale sur votre PC.

    Comme indiqué sur la copie d’écran ci-dessous, on modifie les règles de filtrage comme suit, en remplaçant xxxx par le nom de votre site haut et fort :
    -*
    +xxxx.hautetfort.com/archive/*.html
    +xxxx.hautetfort.com/*.gif
    +xxxx.hautetfort.com/*.png
    +xxxx.hautetfort.com/*.jpg
    +xxxx.hautetfort.com/*.css

    De plus, dans l’onglet Fouineur, on désactive la lecture du fichier robots.txt, à la ligne spider, en sélectionnant : pas de règles robots.txt





    Si vous voulez migrer l’intégralité de vos commentaires, nous vous recommandons de les interdire sur le site H&F le temps d’effectuer la migration, pour ne pas en perdre. Vos lecteurs bavards pourront reprendre le fil de la discussion sur votre site wordpressien.
    5. Installation d’une version locale de Wordpress

    A l’aide de Wamp, on installe une version de wordpress en local. On se réfèrera, en cas de problème, à l’abondante documentation existant déjà sur Internet sur ce sujet.

    On place maintenant en mode maintenance le wordpress de production afin d’éviter tout commentaire supplémentaire pendant la migration.
    Dans le wordpress, on exporte le contenu actuel en allant dans « gérer » puis en cliquant sur exporter. On télécharge alors le fichier d’exportation.

    Attention à bien conserver ce fichier intact en cas de problème !

    On importe ensuite ce fichier dans le wordpress local via gérer, puis importer.

    A l’aide de phpMyadmin, il faut modifier en base de donnée les options qui indiquent l’url du site afin d’éviter d’être rediriger vers le site de production.
    On effectuera la manœuvre inverse à la fin (ancien et nouveau sont les adresses des sites) :

    update wp_options
    set option_value = REPLACE(option_value,’ancien’,’nouveau’)
    where option_value like ‘%ancien%’;

    Remarque : il semblerait que cette modification ne soit plus aussi efficace sur la version WP2.5+ qu’elle ne l’était sur la version 2.3.
    6. Conversion haut et fort vers Wordpress

    A présent, nous allons convertir les fichiers haut et fort et les intégrer dans la base locale wordpress, à l’aide de l’utilitaire importation-hetf.php

    En éditant importation-hetf.php à l’aide d’un éditeur de texte, on modifie dans le fichier les chaînes de caractères associés au nom du site haut et fort (monsitehetf.hautetfort.com), et on indique le nom, login et mot de passe pour accéder à la base.

    Dans la section // Décorticage d’une page, il est nécessaire de modifier les expressions régulières pour qu’elles correspondent au modèle de la page H&F. Le programme recherche en effet des séquences particulières pour repérer le contenu de la note, sa date de publication, les mots-clés associés, etc. Ce contenu est facilement identifiable à l’œil nu pour un humain, mais un programme est moins subtil et a besoin d’information précise. Les repères dans le code HTML de la page varient d’un thème H&F à un autre, c’est pourquoi l’adaptation des expressions régulières est indispensable.



    Il faut également, à l’aide de Phpmyadmin, ajouter dans deux des tables de la base une colonne supplémentaire permettant de stocker des informations de migration :

    alter table `wp_posts` add column `migrationcui_url` varchar (200) CHARSET utf8 COLLATE utf8_general_ci NULL after `comment_count` ;
    alter table `wp_comments` add column `migrationcui_id` varchar (30) CHARSET utf8 COLLATE utf8_general_ci NULL after `user_id` ;


    On lance importation-hetf.php que l’on aura placé dans l’arborescence accessible via WAMP à partir du navigateur internet, une fois ces modifications effectuées.

    On importe sur le site de production, via ftp, tous les médias dans le répertoire :

    /wp-content/import-hetf/

    7. Exportation vers le wordpress de production

    A présent, à l’inverse du départ, on exporte le contenu du wordpress local vers le wordpress de production :

    Menu Gérer, puis exporter.

    Et l’on importe ce fichier sur le wordpress de production, menu gérer, importer.

    On modifie les options de la base de données sur le serveur de production cette fois :

    update wp_options
    set option_value = REPLACE(option_value,’ancien’,’nouveau’)
    where option_value like ‘%ancien%’;

    Voilà, la migration est terminée.

    #627687
    tatam
    Membre
    Chevalier WordPress
    130 contributions

    Je suis très interressé par cette méthode.

    #627688
    aa8520
    Membre
    Initié WordPress
    1 contributions

    Super, merci beaucoup pour cette doc, elle m’a été d’un grand secours !
    Et bravo pour Comme une image pour son nouveau blog.

    #627689
    gd6d
    Participant
    Chevalier WordPress
    220 contributions

    Bonjour,

    Suis très intéressé par cette méthode. Comment récupérer le précieux fichier « importation-hetf.php »
    D’avance merci !

    Olivier

    #627690
    Comme une image
    Participant
    Maître WordPress
    2493 contributions

    Bien sûr !
    Comme on me le demande assez régulièrement, je la poste ci-dessous (pourquoi n’y ai-je pas pensé plus tôt) avec les recommandations d’usage :

    1/ La procédure a été écrite pour une ancienne version de WP (2.3 ? 2.6 ?) et risque donc de progressivement se retrouver frappée d’obsolescence !

    2/ Elle a été écrite quand je découvrais (simultanément) WP et PHP ! Ça n’est donc pas un modèle et il y aurait sans doute eu mille façon de faire la même chose plus rapidement, plus proprement, plus durablement, etc.

    3/ Elle demande, dans tous les cas, un peu d’adaptation et de contrôle et demande donc des compétences PHP/HTML, voire MySQL.

    #627691
    gd6d
    Participant
    Chevalier WordPress
    220 contributions

    Je suis désolé, j’ai beau chercher attentivement, je ne vois pas comment récupérer le zip… Suis-je myope ???

    #627692
    Comme une image
    Participant
    Maître WordPress
    2493 contributions

    Euh, désolé ! Je voyais la pièce jointe, mais je n’avais pas pensé que c’était un privilège lié aux administrateurs.
    Voilà, normalement, ça devrait marcher, non ?

    #627694
    pyrome
    Membre
    Initié WordPress
    4 contributions

    Bonsoir,

    Je bute dans la dernière ligne droite.

    Copie locale avec HTtrack = ok
    Installation serveur Wamp = ok
    Installation WP = ok
    Modification fichier importation-hetf.php = ok
    Ajout colonnes supplémentaires = ok

    Mais pour lancer l’importation, je ne vois pas comment faire :(

    « On lance importation-hetf.php que l’on aura placé dans l’arborescence accessible via WAMP à partir du navigateur internet, une fois ces modifications effectuées. »

    Où faut-il mettre exactement le script PHP dans wamp ?
    Comment lance-t-on l’exécution du script ?

    Merci de votre aide

    #627693
    Comme une image
    Participant
    Maître WordPress
    2493 contributions

    My god, tout ceci est un peu ancien dans mon souvenir ^^

    Eh bien, je pense qu’il faut placer le script PHP dans une zone où Wamp attend d’avoir les pages d’un serveur Web, et lancer ainsi l’exécution PHP depuis son navigateur avec une URL du type http://localhost/…./importation-hetf.php

    #627695
    pyrome
    Membre
    Initié WordPress
    4 contributions

    Merci bcp !

    Pour moi c’était dans : wamp/www

    J’ai donc pu lancer l’import mais c’est un échec:

    Extraction des URLS des NOTES
    Aucun enregistrement ne correspond
    Extraction des URLS des COMMENTAIRES
    Aucun enregistrement ne correspond
    475 notes lues, 0 OK, 475 KO, 0 commentaires OK, 0 commentaires KO (total=0), 0 termes créés, 0 taxonomies créées, 0 relations de taxonomies créées

    Je ne vois pas bien ce que je dois corriger…

    l’erreur la plus fréquente étant:
    « Deprecated: Function eregi() is deprecated in C:wampwwwimportation-hetf.php on line 65« 
    La ligne 65 :
    if (eregi(« archive.*.html »,$Directory.’/’.$Entry)){
    DecortiquePage($Directory. »/ ».$Entry);

    #627696
    Comme une image
    Participant
    Maître WordPress
    2493 contributions

    Je crains que ma procédure, développée il y a bientôt 2 ans, et pas maintenue, ne soit plus trop fonctionnelle, notamment avec les évolutions du modèle de données WordPress (j’aurais certainement dû mieux l’écrire, à base de primitives WP, mais je ne connaissais ni WP ni PHP à l’époque, je réclame donc un peu d’indulgence !)

    Autrement dit, mon conseil, te retrousser les manches et essayer de réinventer ma poudre.

15 sujets de 1 à 15 (sur un total de 15)
  • Vous devez être connecté pour répondre à ce sujet.