Si vous changez le nom de domaine d'un site WordPress, un simple export de la base de données ne vous permettra pas de récupérer la configuration des menus, des widgets et d'éventuelles autres extensions que vous avez intégré.

Pourquoi je perds ces informations lors d'un export WordPress ?

Ces données stockées en base de données sont  sérialisées. Sans rentrer dans les détails (ce dont d'ailleurs je serais incapable, mais vous pouvez toutefois allez faire un tour ici) l'important pour nous est qu'une chaîne enregistrée en donnée est précédée de sa longeur.

Exemple de donnée sérialisée : 

INSERT INTO `wp_options` (`option_id`, `blog_id`, `option_name`, `option_value`, `autoload`) VALUES (46, 0, 'recently_edited', 'a:3:{i:0;s:17:"http://monsite.fr";i:2;s:27:"http://monsite.fr/index.php";i:3;s:0:"";}', 'no')

Dans l'exemple ci dessous, observez la partie s:17:"http://monsite.fr", et notez que 17 représente la longeur de la chaîne "http://monsite.fr"

Cette exemple illustre le fait que si vous changier le nom de domaine de votre site de http://monsite.fr en http://monnouveausite.fr par exemple, vous allez non seulement devoir remplacer dans votre base de données le nom de votre ancien site par le nouveau, mais il faudra aussi impérativement revoir la taille de la nouvelle chaîne s:24:"http://monnouveausite.fr"

Comment changer le nom de domaine de mon site WordPress sans perte d'information ?

J'utilise un script qui permet de faire ce travail : Remplacement du nouveau nom de domaine et gestion des données sérialisées. 

Télécharger le script "Search and replace tools"

Après avoir bien effectué une sauvegarde de votre base de données (étape essentielle !) chargez ce script à la racine de votre site WordPress.

Appelez le script depuis votre navigateur http://monnouveausite.fr/searchreplacedb2.php  (l'auteur  conseille toutefois de changer le nom du script).

Suivez les instructions, on vous demandera de confirmer les données de connexion à la base de données de votre nouveau site.

On vous demandera ensuite l'URL à remplacer de votre ancien site, et celle du nouveau.

Le script procédera alors au scan de toutes les tables de votre base de données et effectuera les remplacements adéquates.

A la fin des opérations, supprimez le script.

C'est une opération des plus délicates, ne la pratiquez que si vous savez ce que vous faites et que vous comprenez les risques

Précieux !

 

 

0 réponses

Laisser un commentaire

Participez-vous à la discussion?
N'hésitez pas à contribuer!

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.