5 façons de modifier plusieurs articles dans WordPress en utilisant la fonction de recherche et de remplacement

WordPress est le système de gestion de contenu (CMS) dominant, et on estime qu’environ 25 % de tous les sites web sur Internet sont créés avec lui. L’une des grandes caractéristiques de WordPress est la facilité avec laquelle presque tout le monde peut créer et gérer son propre blog sans avoir de connaissances en HTML, JavaScript, CSS, etc. Des milliers de thèmes et de plugins sont disponibles. Vous pouvez donc personnaliser et modifier votre blog autant que vous le souhaitez.

Si vous avez des centaines ou des milliers d’articles et de commentaires sur votre blog, leur gestion devient plus difficile car vous pouvez être amené à apporter des modifications à plusieurs articles en même temps. Par exemple, vous pouvez télécharger des images sur votre serveur CDN pour les afficher plus rapidement. Cela signifie que tous les liens dans les articles qui présentent des images devront être remplacés par une nouvelle URL. Ou peut-être avez-vous essayé trop de plugins, avec pour effet secondaire des informations inutiles dans les messages.

Par défaut, WordPress ne peut pas modifier le contenu de plusieurs articles en même temps, vous devrez donc utiliser une autre méthode. Nous vous proposons ici 5 méthodes différentes que vous pouvez essayer.

1. Search and replace un plugin WordPress

Il existe plusieurs plugins pour WordPress qui vous permettent de rechercher et de remplacer du texte dans la plupart des zones de votre blog. Le plugin Search & Replace a été choisi parce qu’il possède suffisamment de fonctionnalités pour un usage général, qu’il est populaire, facile à utiliser et qu’il est mis à jour régulièrement.

  1. Téléchargez le plugin Search & Replace, décompressez-le et téléchargez-le dans le dossier wp-content/plugins de votre serveur. Vous pouvez également l’installer directement depuis WordPress (Plugins > Ajouter un nouveau > Rechercher et remplacer > Installer maintenant > Activer le plugin).
  2. Sélectionnez Outils > Rechercher et remplacer dans la barre latérale de maintenance. Saisissez un terme de recherche et une chaîne de remplacement (qui peut être laissée vide pour la suppression), puis sélectionnez uniquement la table wp_posts dans la liste.
  3. Sélectionnez Exécuter la recherche et le remplacement. Comme la case à cocher Dry Run est sélectionnée par défaut, seule la recherche est effectuée et les modifications sont affichées telles quelles. Une fenêtre de résultats apparaît en haut, montrant ce qui a été trouvé et ce qui sera modifié lors du remplacement effectif. Cliquez sur le bouton « Afficher les détails » pour voir la fenêtre avant et après.
  4. Lorsque vous êtes satisfait de tout, décochez la case « Dry Run », enregistrez les modifications dans la base de données et cliquez sur « Do ». Si vous n’avez pas de sauvegardes précédentes, il peut être plus sûr d’exporter d’abord les modifications dans le fichier SQL.

L’avantage de la fonction Rechercher et remplacer est qu’elle vous permet de sauvegarder et d’importer la base de données SQL, et qu’elle vous aide lorsque vous passez d’un domaine à un autre.

Remarque : si la fonction Rechercher et remplacer n’est pas assez puissante, vous pouvez essayer un autre module complémentaire appelé Search Regex. Il offre de puissantes options de regex de recherche qui vous permettent d’affiner vos mots-clés. Malheureusement, il n’a pas été mis à jour depuis un certain temps et d’autres fonctions comme la recherche de titres, d’extraits et d’URL ne fonctionnent plus, mais la recherche et le remplacement du contenu des articles fonctionnent toujours. Assurez-vous d’avoir une sauvegarde de la base de données avant de l’essayer.

2. Script PHP pour la recherche et le remplacement de la base de données

Cette méthode fonctionne en utilisant un script PHP qui se charge sur le serveur et apporte ensuite des modifications à la recherche et au remplacement de la base de données SQL. Il est plus facile à utiliser que phpMyAdmin, tout en offrant suffisamment d’options pour la plupart des utilisateurs.

  1. Téléchargez le DB Search-Replace et extrayez le fichier Zip. Naviguez vers le dossier Search-Replace-DB-master et trouvez un autre dossier portant le même nom. Si nécessaire, renommez-le pour des raisons de sécurité.
  2. Téléchargez ce dossier sur votre serveur et placez-le au même endroit que wp-admin, wp-content, etc. Dans votre navigateur, allez dans le dossier, par exemple, mysite.com/blog/Search-Replace-DB-master.
  3. Une fois téléchargé, vérifiez si le script a automatiquement trouvé la base de données de WordPress. Sinon, saisissez les données manuellement. Les champs de recherche et de remplacement sont faciles à comprendre, et il existe également une option regex pour les utilisateurs avancés.
  4. Dans la section Tables, sélectionnez « select tables », faites défiler la liste, trouvez la table wp_posts et sélectionnez-la.
  5. Vous pouvez maintenant tester ou appliquer vos modifications. Cliquez sur le bouton Dry Run pour lancer une recherche afin de voir combien d’instances ont été trouvées et ce qui sera modifié si la dérogation est effectivement exécutée. Lorsque vous êtes satisfait, cliquez sur le bouton Exécuter en direct pour appliquer les modifications à la base de données.

Une fois la recherche de la base de données de remplacement terminée, supprimez-la et sécurisez le serveur en cliquant sur le bouton Supprimer.

3. Trouver et remplacer par phpMyAdmin

Modifier Plusieurs Articles Dans WordPress En Utilisant La Fonction De Recherche Et De Remplacement

Les personnes qui ont accès à la base de données SQL de WordPress peuvent facilement modifier plusieurs articles directement depuis phpMyAdmin. Cette méthode peut s’avérer risquée si vous n’êtes pas familier avec phpMyAdmin. Les utilisateurs moins expérimentés ne devraient donc l’envisager qu’en dernier recours s’ils ont des difficultés avec les méthodes plus simples. Comme toujours, nous vous recommandons d’effectuer des sauvegardes appropriées chaque fois que vous modifiez une base de données.

  1. Connectez vous à phpMyAdmin via l’hébergeur, par exemple via cPanel, etc. Dans la liste des bases de données, cliquez sur la base de données du blog WordPress.
  2. Trouvez et cliquez sur la table wp_posts dans la liste des tables, puis cliquez sur le bouton Rechercher en haut de la fenêtre principale. Cliquez sur le bouton Rechercher et remplacer juste en dessous.
  3. La fenêtre Rechercher et remplacer est assez simple, entrez la chaîne que vous voulez trouver et celle que vous voulez remplacer, et pour des utilisations plus avancées il y a l’option d’utiliser des expressions régulières. Le menu par défaut permet de rechercher le contenu des messages, mais il peut être modifié pour rechercher des titres ou des extraits de messages, etc. Cliquez sur le bouton « Suivant » pour commencer à rechercher des publications dans la base de données.
  4. Si les articles sont trouvés, un aperçu des articles s’affiche, avec le texte original à gauche et les modifications à droite. Si vous êtes satisfait des modifications, cliquez sur le bouton Remplacer.

Vous ne pouvez pas supprimer le texte en utilisant cette méthode, vous devez spécifier la chaîne à remplacer, la solution est la recherche et le remplacement manuel plus avancé ci-dessous.

4. Recherche et remplacement manuels depuis phpMyAdmin

La méthode simple de recherche et de remplacement décrite ci-dessus n’est que l’avant-plan des requêtes SQL manuelles, mais vous pouvez saisir ces commandes manuellement si vous le souhaitez, bien que vous deviez être prudent car cette méthode est potentiellement un peu plus dangereuse.

  1. Connectez-vous à phpMyAdmin et sélectionnez la base de données WordPress dans la liste. Cliquez sur le bouton SQL en haut de la fenêtre principale.
  2. La fenêtre de requête SQL vous permet de saisir diverses requêtes, et la recherche et le remplacement du contenu des articles de blog sont assez faciles :
    UPDATE wp_posts SET post_content = REPLACE (post_content, ‘search for’, ‘replace with’) ;
    La même requête ci-dessous a été nettoyée et rendue plus lisible grâce au bouton Format.
  3.  Lorsque vous êtes sûr que votre requête est correcte, cliquez sur le bouton « Go ». Notez que cette action ne fournit pas de prévisualisation comme la fonction plus simple Rechercher et Remplacer, et que l’action sera appliquée à la base de données immédiatement.
    L’avantage de cette méthode est que vous pouvez supprimer le texte en spécifiant une chaîne vide pour le remplacer :
    UPDATE wp_posts SET post_content = REPLACE(post_content, ‘deletethis’, « ) ;

Bien que nous n’en parlions pas ici, vous pouvez utiliser des requêtes plus avancées pour trouver l’élément que vous recherchez, comme la commande LIKE pour rechercher des termes similaires et remplacer d’autres contenus dans les articles, tels que les en-têtes ou les extraits. Le manuel MySQL contient beaucoup plus d’informations sur ce sujet.

5. Requêtes SQL à partir du plugin WordPress

Si vous souhaitez modifier le contenu des articles dans votre base de données en utilisant les mêmes requêtes SQL que ci-dessus, mais que vous n’avez pas accès à phpMyAdmin, il existe un plugin SQL Executioner pour WordPress qui vous permet de le faire.

  1. Téléchargez SQL Executioner, décompressez-le et téléchargez-le dans le dossier des plugins de votre serveur ou installez-le directement depuis l’administration de WordPress (Plugins > Add New > Look for SQL Executioner > Install Now > Activate).
  2. Allez dans Outils > Exécuteur SQL dans la barre latérale d’administration, tapez la requête SQL sélectionnée dans la zone de texte et exécutez la requête en sélectionnant Exécuter SQL.
    La commande est exécutée immédiatement et est irréversible. Veillez donc à la saisir correctement et à créer des sauvegardes au cas où.

Conseil : si votre table d’enregistrements n’a pas de nom par défaut, comme wp_posts, vous pouvez trouver le nom en cliquant sur $posts et en regardant la requête brute juste en dessous de Results.

mardi 27 juillet 2021, 13:22