Terminal

Changer l’URL d’un site avec WP-CLI

WP-CLI nécessite un accès SSH au serveur, c’est-à-dire un accès via un terminal. C’est le cas quand vous gérez votre propre serveur (dédié ou VPS), mais aussi chez certains hébergeurs mutualisés1. Si vous avez cela, n’hésitez pas et installez cette extension très pratique pour plein de petites choses qui sont pénibles à utiliser avec une interface, mais très simples au contraire en ligne de commande.

Je l’utilise essentiellement pour gérer la base de données. De temps en temps, je crée une sauvegarde en tapant uniquement wp dp export et j’obtiens dans la foulée un fichier SQL que je récupère ensuite sur mon ordinateur et que je stocke sur un autre serveur. Autre commande intéressante : wp db optimize qui, comme son nom l’indique, active les fonctions d’optimisation indispensables de temps à autre.

Mais le cas le plus utile pour moi jusque-là a été le changement de toutes les occurences de l’ancienne URL quand j’ai passé mon blog personnel en HTTPS. En utilisant une seule commande, WP-CLI a cherché dans la base de données toutes les fois où l’ancienne adresse était présente et l’a remplacé par la nouvelle. Le tout est fait proprement, sans risque  de casser quoi que ce soit, et surtout en évitant les pièges habituels en la matière (quand on le fait avec une requête SQL classique, on peut passer à côté de certaines occurrences, ou casser quelque chose).

wpcli-searchreplace.png
Si vous pouvez installer WP-CLI et que vous voulez changer un élément dans la base de données (ce n’est pas forcément une URL d’ailleurs, tout est possible), voici ce qu’il faut faire :

wp dp export
wp search-replace 'texte original' 'texte final' --skip-columns=guid

La première ligne vous assure une solution de replis en cas d’erreur, la deuxième opère les changements. En retour, vous aurez la liste de tout ce qui a été modifié dans la base de données, une première vérification indispensable avant d’ouvrir le site pour s’assurer que tout est correct.

Pour en savoir plus sur cette commande et les différentes options proposées, la documentation officielle est un incontournable…

Rappel : il ne suffit pas de changer la base de données si on veut changer l’URL d’un blog WordPress. Il faut aussi mettre à jour l’adresse dans les options, comme c’est expliqué dans le Codex, la documentation officielle du CMS.


  1. En France, Web4All et MonArobase proposent cette fonction. 
Publicités