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.

LAISSER UN COMMENTAIRE

Please enter your comment!
Please enter your name here