J’ai récemment été confronté à un événement qui soulevait un problème technique. Dans le cadre du changement de nom d’une entreprise, le changement du nom de domaine peut s’avérer compliqué. Le site était sous WordPress. Fort heureusement le site était hébergé sur un VPS. La partie DNS / Serveur fut donc simple, il a fallu ajouter un Vhost. Jusqu’ici rien de très compliqué. Mais comment migrer son site WordPress vers un nouveau nom de domaine ? Je vais vous expliquer comment.


Je vais délibérément zapper la partie serveur, puisque cela dépend de chacun. Je considère donc que votre domaine pointe bien vers votre serveur où est hébergé le site. Si vous rencontrez un problème à ce niveau là, n’hésitez pas à commenter. Je vais uniquement m’attaquer à la partie WordPress.

Etape n°1 : Préparez vos redirections 301

Dans le cadre du changement de domaine d’un site WordPress, et pour des problématiques SEO, il est important de préparer ses redirections 301. Ces redirections sont à définir dans le fichier .htaccess. Cela va permettre aux visiteurs essayant d’accéder à l’ancien domaine d’être redirigés vers le nouveau.

Pour ce faire, rien de plus simple :

RewriteCond %{HTTP_HOST} ^anciendomaine.com [NC]
RewriteRule ^/?(.*) http://www.nouveaudomaine.com/$1 [L,R=301]
RewriteCond %{HTTP_HOST} ^www.anciendomaine.com [NC]
RewriteRule ^/?(.*) http://www.nouveaudomaine.com/$1 [L,R=301]

Ce bout de code va permettre de rediriger tous ceux essayant d’accéder à l’ancien domaine vers le nouveau domaine. Bien entendu le code est à adapter ! Dans mon exemple, je force l’accès en www et le site en http. Cela redirigera TOUTES les URLs. Par exemple, si quelqu’un essaye d’accéder à l’URL www.anciendomaine.com/ma_page_1/ vers www.nouveaudomaine.com/ma_page_1/.

4 petites lignes qui vont donc faire un super travail !

Etape n°2 : Changez le domaine dans votre panneau d’Administration

Ca y est, c’est l’heure de migrer le site. Si vous avez beaucoup de trafic, je vous suggère de faire ça le soir, voire la nuit. En effet on est jamais à l’abri d’un problème technique.

Il va donc falloir modifier l’URL du site dans la base de données. Inutile de vous connecter à votre phpMyAdmin. Rendez-vous dans votre panneau d’administration WordPress, allez dans Réglages -> Général. De là, vous avez 2 cases à modifier :

  • Adresse web de WordPress (URL)
  • Adresse web du site (URL)

Dans ces 2 cases vous verrez votre ancien domaine, remplacez simplement les 2 URLs par celles de votre nouveau domaine, puis cliquez sur Enregistrer les modifications en bas de page.

changer domaine wordpress
Changement du domaine dans les réglages de WordPress

Normalement, vous allez être redirigé vers votre page de connexion (WP Login). C’est normal, le domaine ayant changé, votre cookie qui permet de garder votre session active n’est plus valable, il s’agit pour votre navigateur d’un nouveau site internet. Connectez-vous et tout devrait bien se passer.

Etape n°3 : Vérifiez que tout marche bien

Premièrement, vérifiez que tout marche bien, que ce soit l’Administration WordPress que votre Front End. Normalement, vous n’avez pas grand chose à faire de plus rassurez-vous.

Appliquer les redirections 301 que nous avons vu précédemment dans votre fichier .htaccess.

Etape n°4 : Modifiez les URLs dans votre base de données

Beaucoup de liens internes doivent être restés avec l’ancien domaine. Avec nos redirections 301, et si vous conservez votre ancien domaine à vie, ce n’est pas très embêtant. Toutefois il peut être nécessaire malgré tout de modifier ces liens. Dans le contenu de votre site, beaucoup de liens sont en dur, notamment avec les Builders des thèmes Premiums, les Sliders, etcs.

Vos contenus sont malgré tout stockés dans votre base de données. Pour faire cette modification en 1 clic, ajoutez l’extension Search & Replace à votre WordPress. Cette extension va vous permettre de remplacer des chaines de caractères dans toutes les tables de votre base de données.

Une fois l’extension installée et activée, rendez-vous dans Outils -> Search & Replace. Vous devez aller dans le second onglet nommé lui aussi Search & Replace. Enfin, remplissez ces deux champs :

  • Search for:
  • Replace with:

Cliquez également sur Select all tables. Je ne vous fait pas de dessin, en claire ça doit ressembler à ça pour éviter toute erreur ou oubli :

search-replace-wordpress-changement-domaine

N’oubliez pas de faire une sauvegarde de votre base de données avant, ce n’est pas que je n’ai pas confiance en vous, mais comme on dit : « sait-on jamais ». Rassurez-vous il serait tout à fait possible de revenir en arrière (voir cet outil). Cliquez enfin sur Do Search & Replace.

Si jamais certains liens n’ont pas été modifié, vous allez devoir le faire à la main dans chacun de vos pages ou Widget.

C’est terminé, vous avez migré votre WordPress vers un nouveau domaine

Voilà, félicitation, vous avez migré votre site WordPress vers votre nouveau domaine ! Vous pouvez être fiers de vous, tapez vous dans la main et allez vous coucher (puisque normalement vous avez fait ça le soir).

Certains font des bidouilles uniquement via la la base de données. Personnellement ma base de données n’est pas accessible via PhpMyAdmin pour des raisons de sécurité, donc chacun se méthode. Je trouve que lancer des commandes SQL comporte un risque (humain). Si la mienne vous plaît (ou pas), n’hésitez pas à le faire savoir en commentaire 🙂 !

Précautions à prendre

Voici un petit bonus, quelques problèmes que vous pourriez rencontrer :

  • Plugin Google reCaptcha : Ce plugin est superbe, mais attention ! En changeant de domaine, votre API ne fonctionnera plus. Tous vos formulaires seront donc défaillants, vous ne pourrez plus vous connecter, plus personne ne pourra commenter votre blog, etc. Pensez bien une fois la migration effectuée à re-générer vos clés Google reCpatcha.
Changer le domaine de son site WordPress
5 (100%) 1 vote

7 Commentaires

  1. Bonjour,
    Merci beaucoup pour votre article 😉
    Je voulez vous poser une question car j’ai peur de faire une bêtise sur mon site 🙁 ,
    j’ai récemment passer mon site en http vers https, j’ai donc fais une redirection 301 avec ce bout de code:
    RewriteEngine On
    RewriteCond %{SERVER_PORT} 80
    RewriteRule ^(.*)$ https://www.monnouveausitevershttps.com/$1 [R=301,L]
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]

    J’ai donc également inscrit une nouvelle propriétés dans Search Consol,
    Mais je voudrais changer de nom de domaine pour un nouveau, comment puis je faire cela sans avoir de « Duplicate content » ??

    Je vous remercie d’avance pour votre soutient et votre réponse,
    A bientôt 😉

    • Bonjour Elodie, comme je vous le disais via Facebook, vous avez 2 solutions : soit votre registrar vous permet de faire une redirection générale de votre ancien domaine vers le nouveau, du coup c’est très simple. Soit vous devrez créer une redirection 301 depuis votre .htaccess de l’ancien domaine vers le nouveau. Êtes vous hébergé chez OVH ?

  2. Bonjour,
    J’écris pour un petit conseil. Je me suis fait hacker mon site et j’ai complètement disparu des recherches Google. J’ai fait les démarches pour essayer de me faire à nouveau référencer mais ça ne marche pas vraiment. Je comptais en profiter pour changer de site internet (je suis photographe et j’aimerais désormais travailler sous mon nom propre, alors qu’avant j’avais un nom de studio).
    Si je change simplement de nom de domaine, est-ce que ma nouvelle adresse pourra être référencée ou c’est le contenu qui est complètement bloqué ? Dans ce cas dois-je plutôt repartir de zéro, avec un nouveau site et ré-éditer tout le contenu ?

    • Bonjour Linda, j’ai regardé votre site, en effet vous avez été très fortement piraté, il y a eu énormément de pages spams. 2 solutions : si votre ancien site n’avait pas beaucoup de backlinks, recréer un site avec le même contenu (sans les pages spams) sur un nouveau domaine suffira. Sinon, si vous aviez beaucoup de liens ce sera + compliqué, il faudra faire des redirections 301. J’attends votre réponse 🙂

LAISSER UN COMMENTAIRE

Please enter your comment!
Please enter your name here