Article d’archive, publié en 2012. Les outils et leurs interfaces ont changé depuis : certains écrans ou réglages peuvent ne plus correspondre.
Migrer son site WordPress n’est certainement pas une chose que l’on est amené à faire tous les jours, mais n’est-il pas appréciable de savoir que cela se fait en trois clic de souris ?
Je pourrais résumer une migration de site à l’installation d’un nouveau site WordPress, à la nuance prêt que se seront des données provenant de vous et qu’il vous allez surement changer de nom de domaine.
J’ai déjà eu l’occasion de traiter de la question de l’installation de WordPress. Je partirais du principe que vous savez tous installer WordPress, créer une base de donnée, vous connectez à cette base, faire un export et un import avec phpMyAdmin. Si cela vous parle chinois, n’hésitez pas à lire notre article sur l’installation de WordPress.
1 – Sauvegarder ses données
Si vous tenez vraiment à votre site WordPress, j’espère que cette étape ne sera pas nécessaire pour vous, car bien entendu, vous sauvegardez tout très régulièrement.
Si vous ne sauvegardez pas souvent votre site WordPress, sachez que vous devez aussi bien sauvegarder vos fichiers, que les données sauvegardées dans votre base de donnée.
1.1 – Récupérer ses fichiers WordPress
Rien de bien compliqué. Armez-vous de votre client FTP favoris, FileZila étant le notre; connectez-vous; rapatriez l’ensemble des répertoires nécessaires au bon fonctionnement de votre site. Le répertoire WWW étant souvent suffisant. Mais attention au répertoire CGI BIN. Votre site peut très bien avoir besoin de certificat de la banque se trouvant dans ces répertoires… par exemple si l’on parle de WordPress en mode e-commerce.
1.2 – Récupérer ses données WordPress
Ici encore, rien de bien méchant. Connectez-vous à l’interface phpMyAdmin de votre site. Rendez-vous rubrique Exporter de la base qui vous intéresse. Par précaution, je fais toujours deux sauvegardes, une avec Drop Table, l’autre sans. On n’est jamais trop prudent.
2 – Transférer ses données
Maintenant que vous avez toutes vos données, sur votre ordinateur, il vous faut faire le processus inverse; envoyez ces données sur votre nouveau serveur.
On prend les mêmes et on recommence, mais cette fois-ci, vous envoyez vos données sur le serveur FTP, et vous choisissez l’onglet Importer dans le nouveau phpMyAdmin.
L’étape la plus longue ici étant bien souvent d’attendre que le transfert FTP se termine, ADSL oblige.
3 – Petits réglages entre amis
Une fois vos données transférées sur le nouveau serveur avec succès, il se pourrait que vous soyez confronté à l’obligation de faire certains petits réglages. Tout dépend du cas de figure.
3.1 – J’ai changé de base de donnée
Naturellement, si vous changez de serveur, il y a de très fortes probabilités que le mot de passe de connexion à MySQL ne soit plus le bon, voir que l’utilisateur ait changé, ainsi que le nom de la table.
Une des étapes nécessaire pour voire le site migré être fonctionnel est d’éditer le fichier wp-config.php.
Remplacez les données par celles qui sont désormais les bonnes.
3.2 – Je n’ai pas changé de nom de domaine
Dans ce cas… votre migration est maintenant terminée. Il vous est possible de vous connecter sur ce site comme vous le faisiez sur le précédent.
Facile n’est-il pas ?
3.2 – J’ai changé de nom de domaine
Si votre migration implique aussi un changement de nom de domaine, il va falloir alors le dire à WordPress. Et pour lui dire, pas de secret, on va devoir passer par les tables de la base de donnée. Pourquoi ? Car WordPress stock le nom de domaine comme une variable dans la base de donnée. Ainsi, lorsque vous changez de nom de domaine, votre ancienne installation ne sera pas directement accessible après avoir copié les données.
Si votre site fait une certaine taille, on peut vite imaginer qu’éditer la base au travers de phpMyAdmin relève de l’art. Mais comme tout est merveilleux dans le monde WordPress, un petit script va nous prendre par la main pour changer l’URL dans votre base de donnée. Que du bonheur.
J’aurais tendance à dire qu’avant d’utiliser ce script, je vous invite très fortement à faire une sauvegarde de votre base de donnée. Mais compte tenu de la situation, vous devez déjà travailler à partir d’une sauvegarde. Donc tout va bien.
Le script dont je parle se nomme WordPress Search and Replace. Notez que ce script peut vous être utile dans d’autres situations que la notre; mais il faut aussi admettre qu’il est particulièrement utile aussi dans ce cas.
Pour changer le nom de domaine dans la base de WordPress, il faut télécharger ce script sur la racine du site en question, et de l’appeler à partir de votre navigateur web chéri.
Une fois connecté au script, voici ce que vous obtiendrez :
Ce script étant bien fait, il vous invite à récupérer automatiquement les informations à partir du fichier wp-config.php. Si celui-ci est bien renseigné, laissez le script faire le travail pour vous.
Vérifiez tout de même que tout vous semble correct.
Sélectionnez ensuite les tables sur lesquels porte votre recherche. Pour notre petite affaire, se limiter à la table _options et _postmeta sera suffisant. Attention à ne pas trop en sélectionner non plus, il se pourrait que le nom de domaine ait été utilisé pour créer le thème par exemple. Il ne faudrait pas venir interférer là où il ne faudrait pas.
C’est ici que les choses sérieuses arrivent. C’est le moment de donner la chaîne de caractère à rechercher et celle qui servira de remplacement. Ici, il est très important de bien faire les choses. L’URL de votre ancien site est stocké sous la forme http://www.monsiteamoi.com.
Il vous faut donc faire une recherche du type http://www.monsiteamoi.com et un remplacement du type http://www.monnouveausiteamoi.com.
On prend le temps de se relire deux fois, et on envoi la requête de remplacement.
Une fois celle-ci effectuée, un retour vous informe du déroulement de l’action.
Testez votre site WordPress et,Oh, magie, votre migration est parfaitement fonctionnelle.
Mais un petit détail avant d’en avoir complètement terminé avec votre migration de site WordPress, pensez à bien supprimer le script de votre serveur web. En effet, celui-ci étant accessible par n’importe qui, il ne serait pas étonnant que des vers exploitent une faille de type interface chaise / clavier de j’ai oublier de retirer un script qui permet de tout changer dans ma base de donnée, par le premier venu. On vous aura prévenu ;)

















46 commentaires
Les échanges d’époque, conservés tels quels.
Voila une opération complexe, pas ouverte au premier venu (comprendre au non-technique), qui devient soudain nettement plus facile … Avec foison d’impressions-écran, c’est tout de suite plus facile !
Forcément, c’est facilité par l’utilisation du script final de recherche/remplace.
Je rajouterais que, si ce n’était pas le cas avant la migration, ajouter des sauvegardes automatiques de son blog est une riche idée. Tant qu’à l’avoir ponctuellement pour la migration, autant systématiser l’opération :-)
Grégory@Bloguer facile Articles récents…Organiser simplement la création du contenu de votre blog avec 2 outils efficaces
Pingback: Migrer son Site WordPress en 3 Minutes - Blog WordPress | Agence WordPress | Scoop.it
J’aurais bien aimé lire ce post la semaine dernière, je me suis tout tapé à la main.
Je bookmark !
Merci pour cet excellent outil.
Super article, grace à lui migration d’un site de dev vers prod en 10 min!
Merci à vous
denny Articles récents…Le partage de films ou musique via P2P légal au Portugal…
bonjour,
en ce moment, WordPress nous donne du fil à retordre. Pour ma part j’ai un tuto qui permet de faire des migrations WordPress via SSH, quand via l’interface ce n’est pas possible.
C’est une alternative qui peut servir, en complément http://www.unpeudeseo.com/2012/09/10/mise-a-jour-manuelle-wordpress/
Bonjour,
merci pour ce tuto.
Pour ma part pour ce qui est de la migration de la BDD, j’utilise le plig in WP Migrate BD :
http://wordpress.org/extend/plugins/wp-migrate-db/
qui permet de modifier le nom de domaine et le répertoire du futur site.
Il est très pratique quand on veut passer de local sur serveur de prod ou serveur test en prod.
David12 Articles récents…Obtenir des liens vers son site web est un des fondements du référencement
Pour ma part, une fois l’exportation de la base effectuée, je l’édite avec un simple éditeur de texte (Notepad++)
je fait un remplacer (Ctrl+H)
cherche « http://www.monancien.fr »
remplacer par : « http://www.monnouveau.fr »
sauvegarde, puis je re-injecte la base .sql ainsi modifiée
je n’ai jamais eu de souci avec cette manip , et elle a l’avantage de ne pas faire appelle a un script
Bon, soyons franc, ça ne m’a pas pris 3 mn, mais j’ai réussi en n’ayant que de faibles connaissances!
Merci bcp pour le tutto, très clair!
Pingback: Au revoir .org Bonjour .tn | Pourquoi pas !!
Merci pour ces explications.
Pour info, il y a un plugin du nom de DataBackupMove qui permet de faire tout cela en une seule fois :)
bonsoir,
comment faire pour qu’un site dans un sous-dossier et son propre nom de domaine?
http://www.site1.com/blog vers http://www.site2.com
merci
Merci pour le tuto. Le script fonctionne très bien.
WordPress est un très bon CMS mais je ne connais pas la raison de ce système d’urls enregistrées dans la BDD. Si on compare avec un CMS comme Joomla! ou prestashop où il suffit de modifier le fichier de config.php et le site est migré facilement. Vous savez pourquoi c’est comme ça sur WordPress ?
Pingback: Migration de site | Pearltrees
Ce tutorial est très bien , et j’en remercie son auteur… Mais en qualité de débutant je met beaucoup plus que 3 minutes pour réaliser une migration d’hebergement (et nom de domaine) de mon WordPress… Est il possible de mofidier cet article et de l’agrémenter, car certains point ne sont pas assez détaillé (et/ou expliqué):
Par exemple:
1.2 – Récupérer ses données WordPress // ….Concernant l’exportation des bases de données et l’utilisation de PhpMydmin n’est pas assez détaillé , ou cliquez , comment choisir ses bases; Une fois exporter , on copie et on colle où, a quel format? etc …
Merci pour tout, j’aimerais finir ma migration correctement…. Et je veux passer par ce super tuto!
Bonjour,
je suis en grosse déprime. J’ai migré mon site vers une nouvelle url et plus rien ne fonctionne.
J’ai modifié les paramètres du wp-config et je comprends bien qu’il faudrait désormais suivre ton tuto en utilisant « search and replace ».
Problème: quand j’essaie de me connecter à mon wordpress, voici le message qu’on me renvoie: Fatal error: Call to undefined function force_ssl_admin() in /homez.744/xnamliorm/www/wp-login.php on line 15
Que faire???
Merci d’avance.
15 jours que ca dure…..
bonsoir,
il serait plus facile de vous aider sur un forum comme wordpress-fr.net
wp-config.php doit avoir les identifiants pour votre base de données.
noaneo Articles récents…Le Soldat Rose 2, Thomas Dutronc chante Blues du Rose
Bonjour
merci pour ce tuto très intéressant, mais est-ce que le fait d’opérer cette « migration » peut jouer sur le référencement du blog?
Oui et non.
Si tu en profites aussi pour changer de domaine, oui. Si ce n’est qu’un simple changement de serveur, non. Toutefois, attention à l’adresse IP du serveur.
Je vais tester ça asap, merci pour ces éclaircissements.
Bonjour,
Merci pour le tuto? J’ai cependant un drole de soucis, ma page principale a bien migré vers le nouveau serveur mais lorsqu’on clique sur un lien, une image, il y a une redirection vers l’ancien serveur.
Une idée ?
Merci !
bonsoir, avez vous modifié dans la base de données tous les tables nécessaires?
noaneo Articles récents…Le Soldat Rose 2, Thomas Dutronc chante Blues du Rose
Merci beaucoup pour cette article ! Ca m’as sortis d’affaire :)
Bizarrement à chaque fois que je mets en ligne un wp j’ai des problèmes différents -_- » après avoir suivi toutes ces manips que j’ai déjà fait plusieurs fois pour d’autres sites, j’obtiens ma page avec la moitié des éléments (pas de header/footer…) et ma page d’admin est inaccessible (il affiche du php brut…)
Comme Frank j’édite directement la bdd depuis un éditeur de texte (Komodo) peut être que ça vient d’ici mais je gamberge un peu ^^ »
de loin la meilleure explication. Merci merci merci
Merci beaucoup pour cet article !
Une migration qui s’est passée sans soucis.
Merci beaucoup ! Très bonne explication et tout marche très bien :)
Bonjour et merci pour ce tutoriel, vraiment très simple et très bien expliqué pas à pas.
Une petite question : Ma bibliothèque de medias contient des images liées à l’ancien site; Dois-je effecar tout et recharger chaque image sur le nouveau site ?
C’est encore moi!
Certaines pages créées sur l’ancien site avec des extensions (par exmple MapsMarkerPro) pointent encore sur l’ancien site. Comment les rapatrier?
Bravo pour ces infos et merci, très utile !
comment faire pour modifier mon header dan le meme site sous wordpress : http://plombierparis20-eme.com/
plombier Articles récents…Déboucher évier sans produit chimique
Bonjour,
Je ne comprends rien!
J’ai transféré via ftp la totalité des fichiers de mon domaine 1 vers le domaine 2. Je n’ai pas réussi à importer le base de données de 1 vers 2 (« erreur d’importation ») mais le site fonctionne parfaitement sur le domaine 2!!!
Bonjour,
j’ai réalisé ma migration de site , mais pas moyen de me connecter sur mon panneau de configuration WP : « ERREUR : les cookies sont bloqués ou ne sont pas reconnus pas votre navigateur. »
Seulement , avec ce même navigateur je me connecte sans soucis à un autre panneau d’admin (site WP d’origine, sur le net). Je suppose donc qu’il y a un chpounz sur le nouveau site.
Auriez vous une piste ?
Merci par avance
Bonjour,
le script est bien mais parfois il ne corrige pas tout, moi je préfère les commandes SQL, chercher sur Google déplacer+wordpress vous verrez un lien vers le site d’Olivier.
Salut
Je suis tombé sur votre script en en cherchant un autre
Je m’explique : j’ai un annuaire de liens développé sous arfooo (php/mysql), et je veux migrer ma BDD, et en fait les milliers de liens et dizaines de catégories dans wpress. Je cherche un script permettant d’intégrer mes liens en tant qu’articles Wpress, et les catégories.
Savez-vous si cela existe, ou comment y arriver sans trop de casse ?
Merci !
lulu
merci beaucoup pour cet article, sachant que j’ai beaucoup souffert afin de migrer mon site de localhost en hébergeur, je ne savais pas comment changer les liens http://localhost/page en site.com/page.
Excellent article qui m’a été très utile. Un grand merci.
Merci du tuyau, j’avais trouvé un autre moyen : exporter les tables nécessaires en csv, l’ouvrir avec excell, faire un search&replace, puis réimportes lesdites tables dans ma base sql, mais le script que tu proposes à l’air plus cool :)
WordPress est le CMS que je préfère. Il y a une logique référencement qu’il n’y a nulle part ailleurs.
Bonjour,
le nom de mon site est BeFitLike, mais mon adresse url est http://www.esprit-forme.
A votre avis, cela pose t’il un problème? Si oui, comment y remédier en gardant le nom BeFitLike.
Merci par avance.
Je pense que actuellement on a pas mal de plugin WordPress pour migrer un site WordPress.
Vous pouvez consulter WordPress GoLive http://goo.gl/uKUrEJ.
il permet d’automatiser tout le process:
– Export de la base donnée
– Remplacer tout les URL par le nouveau domaine
– Tranférer les fichiers
– Import de la base
– Les objets serialisé sont prise en compte.
Pingback: Là où je t'emmènerai … » Les joies de la migration !
Pingback: Migrer son Site WordPress en 3 Minutes - Blog W...
Grand merci !
La migration d’un site wordpress est plus facile qu’avant ..avec les nouvelles versions de wordpress, il est plus facile de migrer son site ..
J’ utilise l’import et l’export de wordpress
– Plugin Back up etc..
moi qui ai une dizaine de wordpress à migrer suite à un changement d’hébergement, j’ai trouvé toute l’info nécessaire pour faire cela facilement et en toute sécurité.
Excellent, merci
zendo Articles récents…rencontre
Content que cet article (et les autres) soit utile. Il faudrait que j’en refasse d’autres sur le sujet, car aujourd’hui il existe de super plugins pour ça. WordPress est en constante mutation, et c’est pour ça qu’on l’aime.
Bonjour, je n’arrive pas a trouver le script de migration. Je pense que le lien est mort !
Salut,
Il semble qu’il soit dispo sur GIT : https://github.com/interconnectit/Search-Replace-DB. Je ne l’ai pas testé (sur GIT), donc hésite pas à faire un retour dessus ;)
Merci pour ce tuto qui m’a bien rassuré pour passer de mon hébergeur « historique » qui me bridait sur le nombre de noms de domaines (céléonet) vers o2switch.
Il faut s’habituer aux différents backoffices des hébergeurs, et cela rajoute de la complexité.
Un petit mot utile : Pour ma part je gère toujours mes noms de domaine chez un tiers (Gandi pour ne pas le nommer) ce qui me permet de ne pas dépendre de l’hebergeur.
Dans ma migration j’ai juste changé les DNS chez Gandi et hop en quelques minutes le site est apparu propulsé par mon nouvel hebergeur.
Bonjour,
j’aurais plusieurs questions à vous demander concernant la migration.
J’ai testé votre tutoriel et ça n’a pas fonctionner.
J’ai bâtit un site en WordPress sur un domaine avec un sous domaine m’appartenant. Je dois transférer ce site sur un domaine déjà existant (qui n’a pas été crée en WordPress) et remplacer le contenu par le contenu que je viens de créer en WordPress. J’ai en ma possession les accès ftp. Je dois conserver le nom de domaine qui existait déjà et ne plus utiliser celui sur lequel j’ai développer le nouveau contenu.
Une suggestion pour faire fonctionner le tout ? Merci :)
Merci beaucoup pour ce tuto.
Simple, claire et efficace.