Selon votre situation, vous avez parfois besoin de mettre à jour des choses en masse sur votre site Web WordPress. Vous venez peut-être de migrer de HTTP vers HTTPS et vous avez besoin de mettre à jour toutes vos URLs HTTP codées en dur dans la base de données. Ou peut-être que vous changez de domaine et que vous avez besoin de mettre à jour toutes les références dans la base de données. Il existe de nombreux scénarios pour lesquels savoir comment effectuer une recherche et un remplacement WordPress en masse peut s’avérer très pratique. Cela peut aussi vous faire gagner beaucoup de temps, parfois même des centaines d’heures !

Recherche et remplacement dans WordPress

Il existe de nombreuses façons d’effectuer une recherche et un remplacement WordPress. Dans cet article, nous vous présenterons quatre options différentes recommandées.

  1. Outil de recherche et de remplacement Kinsta
  2. Plugin Better Search Replace
  3. Le script PHP interconnect/it Search Replace DB
  4. WP-CLI

1. Outil de recherche et de remplacement Kinsta

Si vous êtes un client Kinsta, vous pouvez utiliser notre outil de recherche et de remplacement qui est disponible directement dans le tableau de bord MyKinsta. Suivez les étapes ci-dessous.

Étape 1

Under Sites click on « Manage » next to the site you want to run a search and replace on.

Gérer le site WordPress

Gérer le site WordPress

Étape 2

Cliquez sur Outils et vous trouverez l’outil « Rechercher et remplacer » en bas.

Outil de recherche et de remplacement Kinsta

Outil de recherche et de remplacement Kinsta

Étape 3

Il existe un certain nombre d’opérations différentes pour lesquelles vous pouvez utiliser cet outil, telles que :

Dans cet exemple, nous allons vous montrer comment mettre à jour les URLs HTTP en HTTPS.

  1. Entrez dans le champ de recherche la valeur que vous souhaitez rechercher dans la base de données, qui est dans ce cas notre domaine HTTP http://wpdev.ink.
  2. Saisissez dans la zone de remplacement la nouvelle valeur qui doit être utilisée pour remplacer la valeur que vous recherchez. Dans ce cas, il s’agit de notre domaine HTTPS, https://wpdev.ink.
  3. Assurez-vous que l’option « Dry Run » est sélectionnée en premier, car cela comptera combien de remplacements seront effectués sans que les remplacements ne soient effectués. Puis cliquez sur « Remplacer ».

Important : Veillez à ne pas inclure d’espaces au début et à la fin dans les champs, car cela pourrait produire des résultats indésirables.

Recherche et remplacement HTTP vers HTTPS

Recherche et remplacement HTTP vers HTTPS

Étape 4

Vous verrez un avertissement confirmant que vous voulez exécuter la commande pour calculer combien de remplacements seront effectués. Cliquez sur « Remplacer » pour confirmer. Remarque : En mode « Dry Run », aucune modification de la base de données n’est effectuée.

Rechercher et remplacement, calculer les remplacements

Rechercher et remplacement, calculer les remplacements

Étape 5

Vous verrez alors le nombre total de remplacements qui seront effectués.

Nombre de remplacements

Nombre de remplacements

Étape 6

Vous pouvez ensuite désélectionner « Dry Run » et cliquer à nouveau sur « Replace » pour effectuer la recherche et le remplacement en apportant les modifications dans votre base de données. Note : Une sauvegarde est automatiquement effectuée lors de son exécution (identifiant de la sauvegarde : beforesearchandreplace). Ainsi, vous pouvez toujours revenir en arrière si nécessaire.

Recherche et remplacement en direct

Recherche et remplacement en direct

Vous verrez alors une confirmation finale du nombre de remplacements effectués.

Confirmation de la recherche et du remplacement en direct

Confirmation de la recherche et du remplacement en direct

2. Plugin Better Search Replace

Une des premières méthodes est d’utiliser un plugin gratuit appelé Better Search Replace.

Plugin Better Search Replace

Plugin Better Search Replace

Le plugin Better Search Replace est développé par l’équipe WordPress de Delicious Brains et s’inspire du script interconnect/IT PHP de l’option 2 ci-dessous. Ces gars savent une chose ou deux sur le développement WordPress. Au moment d’écrire ces lignes, le plugin compte actuellement plus de 300 000 installations actives avec une note de 4,5. Il est également activement maintenu. Vous pouvez le télécharger à partir du répertoire WordPress ou en le recherchant dans votre tableau de bord WordPress sous « Ajouter nouveau » extensions. Quelques-unes des caractéristiques incluent :

  • La prise en charge de la sérialisation pour toutes les tables
  • La possibilité de sélectionner des tables spécifiques
  • La possibilité d’effectuer une « série d’essai » pour voir combien de champs seront mis à jour
  • Pas de configuration serveur requise en dehors d’une installation en cours d’exécution de WordPress
  • Support du multisites WordPress

Il existe des centaines de scénarios d’utilisation différents. Comme vous pouvez le voir dans notre exemple ci-dessous, dans les options Better Search Replace, nous pouvons facilement rechercher des références HTTP codées en dur et les mettre à jour avec la version HTTPS.

Options de Better Search Replace

Options de Better Search Replace

Il existe également une version pro du plugin qui vous offre encore plus de fonctionnalités. Vous pouvez consulter leur documentation officielle sur la façon de mieux utiliser le plugin.

3. Le script PHP interconnect/it Search Replace DB

Une deuxième option que vous avez pour exécuter une recherche et un remplacement dans WordPress est d’utiliser un script PHP gratuit d’interconnect/it appelé Search Replace DB.

interconnect search replace

Important

L’utilisation de ce script pourrait casser votre site WordPress si vous ne savez pas ce que vous faites. Si vous n’êtes pas à l’aise de le faire, veuillez d’abord vérifier auprès d’un développeur ou de votre hébergeur web.


Ce script existe depuis 2011 et les développeurs le mettent à jour activement. Interconnect/it est connu pour son excellent travail de conseil et de développement WordPress. Pour utiliser le script  téléchargez simplement le fichier zip, extrayez le dossier search-replace-db-master, et renommez-le en un fichier secret de votre choix. Dans notre exemple, nous l’avons renommé Update-db-1551. Téléchargez-le ensuite via FTP, SFTP ou SCP dans le répertoire public de votre serveur Web. C’est généralement le même répertoire qui contient votre répertoire /wp-content. Naviguez ensuite jusqu’à votre dossier secret dans votre navigateur, par exemple https://domaine.com/update-db-1551.

Charger le script de remplacement de la recherche d'interconnect/it

Charger le script de remplacement de la recherche d’interconnect/it

Le script tentera automatiquement de trouver et de remplir le champ de la base de données mais vous devez vérifier que les détails sont corrects et que c’est pour la base de données sur laquelle vous souhaitez effectuer une opération de recherche/remplacement. Vous pouvez tout d’abord cliquer sur « dry run » pour voir ce qui va être mis à jour/remplacé. Ensuite, lorsque vous êtes prêt, cliquez sur « live run » qui effectuera les mises à jour dans la base de données WordPress.

Exécuter la recherche et le remplacement sur la base de données WordPress

Exécuter la recherche et le remplacement sur la base de données WordPress

Il est également très important pour des raisons de sécurité que vous supprimiez ce script une fois que vous avez terminé ! Vous pouvez cliquer sur le bouton « effacer ». Si vous ne le faites pas, cela pourrait laisser votre site Web ouvert aux attaques. Il est également recommandé de vérifier deux fois sur votre serveur web et de confirmer que le dossier/script a été complètement supprimé.

4. WP-CLI

Et enfin, la dernière méthode recommandée pour effectuer une recherche et un remplacement WordPress est de le faire directement avec WP-CLI. C’est pour vous, les développeurs WordPress. Pour nos clients Google Cloud, nous fournissons un accès SSH pour que vous puissiez utiliser WP-CLI. Si vous n’êtes pas familier avec WP-CLI, vous pouvez consulter notre article détaillé sur la gestion de WordPress depuis le terminal.

Voici un exemple de commande :

wp search-replace 'http://example.dev' 'http://example.com' --precise --recurse-objects --all-tables

Vous pouvez en savoir plus sur les paramètres disponibles pour la commande wp search-replace dans la documentation officielle de WP-CLI, ou consultez ce guide de recherche et remplacement WPCLI avancé.

Et une quatrième option, bien sûr, serait d’exécuter manuellement la recherche et de remplacer les requêtes directement dans MySQL. Mais cela ne devrait être fait que par des développeurs WordPress professionnels.

15
Partages