Comment déplacer un site WordPress en toute sécurité

Publié le 28 août 2014 par Louis-Philippe Dea
Le déplacement d’un site WordPress peut sembler une tâche difficile et pour certain, cette étape est catégorisée dans « pas touche! ». Dans le Codex WordPress, l’information sur le sujet offre un guide détaillé, mais semble un peu désorganisée et complexe à suivre. Si un changement d’hébergeur actuel s’impose et que vous souhaitez passer à un autre nouveau, ou que vous souhaitez simplement déplacer votre site à la racine de votre domaine, ce guide est pour vous! Suivez-le étape par étape. Nous allons couvrir deux scénarios se produisant le plus souvent:
  • Déplacement d’un site Web d’un sous-répertoire vers la racine du domaine.
  • Déplacement d’un site en provenance d’un certain hébergeur vers un autre.

Le transfert d’un site WordPress d’un sous-répertoire vers la racine

C’est une méthode simple qui vous permettra de garder votre installation WordPress actuellement dans un sous-répertoire (ex : www.nomdedomaine.com/votresitewordpress/ et d’utilisez l’URL de votre domaine racine (ex : www.nomdedomaine.com).

1. Effectuez la sauvegarde de votre site

La sauvegarde est de mise pour ce genre de manipulation, une tranquillité d’esprit en cas de problème. Cela inclut les fichiers de votre thème, plugins, médias (donc, tout votre répertoire WordPress) ainsi que de votre base de données (effectuez une exportation de celle-ci dans phpMyAdmin, sous l’onglet «Export»).
Vous pouvez utiliser n’importe quel outil de sauvegarde avec lequel vous vous sentez le plus à l’aise. Vous pouvez choisir de copier vos fichiers sur votre ordinateur manuellement à l’aide de FTP ou SFTP avec FileZilla. Assurez-vous d’avoir copié les fichiers cachés tels que votre fichier .htaccess situé à la racine du répertoire WordPress.

2. Déplacez vos fichiers

S’il y a un site existant à la racine du FTP, vous allez devoir le supprimer. Si vous souhaitez conserver une copie,vous pouvez également faire une sauvegarde du dit site. Via votre FTP, déplacez tous les fichiers de votre répertoire WordPress à la racine du site (image ci-dessous).

3. Modifiez votre fichier .htaccess

Votre fichier .htaccess est situé à la racine de vos fichiers WordPress. Celui-ci devrait avoir l’air de ça :

# BEGIN WordPress

RewriteEngine On
RewriteBase /nom-de-lancien-repertoire/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /nom-de-lancien-repertoire/index.php [L]

# END WordPress

Modifiez-le pour ceci :

# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

En enlever le sous-répertoire dans ces deux lignes de code du .htaccess, nous indiquons que le site est désormais situé à la racine du FTP.

4. Modifiez votre fichier SQL de base de données

Voici la dernière étape du transfert. Ici, vous devez avoir exporté préalablement votre base de données SQL via phpMyAdmin (dans phpMyAdmin, cliquez sur votre base de données, et allez dans l’onglet Export. Vous pouvez exporter celle-ci en fichier .sql ou .zip, comme vous voulez).

Supprimez votre base de données en ligne (ayez un backup!).

Ouvrez votre fichier SQL dans un logiciel d’édition de texte. Personnellement, je choisis TextEdit, car un logiciel comme Coda ou SublimeText ajoute de la couleur aux balises de code, ce qui rend le fichier ardu à modifier étant donné la lourdeur du fichier.

Effectuez un « find & replace » (chercher & remplacer? lol). Cherchez dans votre SQL une ligne de code telle que :

http://www.votrenomdedomaine.com/votre-repertoire

* Important, dans mon find & replace, je ne met pas de « / » à la fin du nom de mon répertoire.

Remplacez cette ligne par :

http://www.votrenomdedomaine.com

Vous devriez avoir au minimum 60 changements. Pour des sites ayant beaucoup de données et d’information, vous pourriez avoir au-dessus de 2 000 résultats.

Réimportez ensuite votre base de données.

Voilà! Votre site devrait être désormais navigable à la racine de votre nom de domaine.

En conclusion

Si jamais vous aviez une erreur PHP, assurez-vous de bien avoir modifié votre fichier .htaccess et d’avoir modifié correctement votre base de données.
Si vous devez effectuer un changement de serveur, vous devez sensiblement effectuer les mêmes étapes si vous devez modifier le répertoire du site web. L’étape de plus à faire serait de modifier votre fichier wp-config.php afin d’y modifier les informations de connexion à votre nouvelle base de données.

Bonne chance!