Blog SearchWP

Tutoriels, astuces et ressources WordPress pour vous aider à développer votre entreprise

Comment corriger une recherche WordPress lente 7 corrections

La plupart des conseils pour une recherche WordPress lente la traitent comme un site Web lent, c'est pourquoi cela aide rarement. Le délai réside généralement dans la requête de base de données qui s'exécute chaque fois qu'un visiteur effectue une recherche.

Par défaut, WordPress transforme chaque mot de recherche en un modèle tel que %mot% et le compare au titre, à l'extrait et au contenu de vos articles et pages. La compression des images ou l'ajout d'un CDN accélère le chargement des pages, mais aucun des deux ne raccourcit cette recherche.

Le moyen d'accélérer la recherche WordPress est d'arrêter cette analyse à chaque requête. Un index de recherche effectue le travail à l'avance, de sorte que WordPress puisse rechercher les mots correspondants au lieu de lire chaque article.

Dans cet article, nous vous montrerons 7 correctifs qui ciblent la requête de recherche elle-même, par ordre d'impact, ainsi que la façon de déterminer lesquels votre site nécessite.

Pourquoi la recherche WordPress est-elle si lente ?

La recherche intégrée de WordPress exécute une nouvelle requête de base de données chaque fois que quelqu'un recherche.

Cette requête prend chaque mot tapé par le visiteur et le compare au titre, à l'extrait et au contenu des articles de vos types d'articles consultables.

Le caractère générique % au début de chaque modèle est ce qui le rend lent. Selon la documentation MySQL sur les index, un index régulier ne peut pas être utilisé pour une correspondance commençant par un caractère générique, de sorte que la base de données doit lire le texte à la place.

Pensez à un bibliothécaire qui lit chaque livre sur l'étagère chaque fois que quelqu'un pose une question sur un sujet, au lieu de consulter le catalogue sur fiches. Sur un petit blog, personne ne remarque l'attente.

Au fur et à mesure que votre site se développe pour contenir des centaines ou des milliers d'articles, de pages et de produits, chaque recherche contient plus de texte à lire.

Les recherches plus longues coûtent aussi plus cher, car WordPress ajoute un nouvel ensemble de correspondances pour chaque mot supplémentaire et exige qu'elles correspondent toutes.

Maintenant, examinons les sept correctifs ci-dessous pour accélérer la requête de recherche elle-même.

Ces correctifs sont classés par impact, en commençant par celui qui vous indique où vous concentrer. Voici un aperçu rapide des 7 méthodes.

1. Trouvez d'abord ce qui ralentit votre recherche

Avant de changer quoi que ce soit, il est utile de voir où va le temps.

Il existe des plugins WordPress gratuits qui répertorient les requêtes de base de données sur chaque page et signalent les lentes. Il montre également quel plugin, thème ou partie du cœur de WordPress est responsable de chaque requête.

Après l'avoir installé, effectuez une recherche sur votre site et ouvrez le menu Query Monitor dans la barre d'outils d'administration.

Si la requête de recherche est la plus lente de la page, les correctifs 2 à 5 seront les plus utiles. Si le serveur lui-même est le goulot d'étranglement, passez au correctif 7.

Si la requête d'un autre plugin est la plus lente, vérifiez les paramètres de ce plugin ou demandez d'abord à son développeur.

Et si la recherche ne renvoie rien du tout, plutôt que des résultats lents, notre guide sur la correction de la recherche WordPress qui ne fonctionne pas couvre ce problème.

2. Remplacez le scan de la base de données par un index de recherche

Le gain de vitesse le plus important vient du fait de ne pas scanner les articles du tout au moment de la recherche.

Un plugin de recherche avec son propre index lit votre contenu une fois, à l'avance, et stocke chaque mot dans une table de correspondance.

Lorsque quelqu'un recherche, le plugin recherche ces mots au lieu de lire chaque article. Nous recommandons SearchWP pour cela.

SearchWP - Meilleur plugin de recherche WordPress

SearchWP est le meilleur plugin de recherche WordPress, approuvé par plus de 50 000 propriétaires de sites Web. Il crée un index de recherche dans votre propre base de données WordPress et prend le relais de la recherche par défaut de votre site, sans aucune modification de thème nécessaire.

Voici quelques fonctionnalités clés offertes par SearchWP qui contribuent à la vitesse de recherche :

  • Son propre index de recherche. SearchWP stocke le contenu des sources que vous choisissez dans des tables d'index dédiées, de sorte qu'une recherche recherche des mots au lieu de parcourir les articles.
  • Indexation en arrière-plan. Le nouveau contenu et le contenu mis à jour sont indexés automatiquement après leur enregistrement, en courtes passes en arrière-plan.
  • Contrôle sur ce qui est indexé. Vous décidez quels types de contenu et quels champs chaque moteur de recherche inclut, ce qui maintient l'index allégé.
  • Recherche Ajax en direct. Les résultats apparaissent dans une liste déroulante au fur et à mesure que les visiteurs tapent, de sorte qu'ils voient les correspondances avant d'appuyer sur Entrée.

Pour commencer, inscrivez-vous sur le site Web de SearchWP et allez dans l'onglet Téléchargements de votre compte. De là, téléchargez le fichier ZIP du plugin et copiez votre clé de licence.

Télécharger le plugin SearchWP depuis l'espace compte

Ensuite, vous voudrez installer et activer le plugin sur votre site WordPress.

Après l'activation, cliquez sur Démarrer l'assistant d'intégration et suivez les instructions à l'écran. Une fois la configuration terminée, SearchWP crée son index en arrière-plan.

L'assistant d'intégration SearchWP crée un index de recherche

Dès lors, les recherches effectuées via le formulaire de recherche standard de votre site passent par l'index de SearchWP au lieu de l'analyse par défaut.

3. Ne recherchez que le contenu dont les visiteurs ont besoin

Un index plus petit a moins d'entrées à vérifier à chaque recherche.

SearchWP n'indexe que les sources que vous activez sur chaque moteur, il est donc utile de supprimer tout ce que les visiteurs ne recherchent jamais.

Pour ce faire, allez dans SearchWP » Algorithme et cliquez sur Sources & Paramètres.

Modifier ou ajouter de nouveaux moteurs de recherche dans WordPress

De là, décochez toutes les sources dont vos visiteurs n'ont pas besoin, comme les Commentaires s'ils sont activés, et cliquez sur Terminé.

limiter les sources pour accélérer la recherche WordPress

Ensuite, cliquez sur Ajouter/Supprimer des attributs sur une source pour choisir les champs qui seront indexés. Lorsque vous avez terminé, cliquez sur Terminé pour conserver vos modifications.

Après cela, cliquez sur Enregistrer, puis cliquez sur Reconstruire l'index et confirmez l'invite pour que SearchWP reconstruise l'index avec vos nouveaux paramètres.

Enregistrer et reconstruire l'index

Pour une présentation complète, consultez notre guide sur la limitation de la recherche à des types de publication spécifiques.

4. Ajoutez un cache d'objets persistant

Un cache d'objets stocke les résultats des requêtes de base de données en mémoire, de sorte que WordPress puisse les réutiliser au lieu de solliciter à nouveau la base de données.

WordPress met déjà en cache les résultats de ses propres requêtes d'articles, y compris les recherches. Sans cache d'objets persistant, cependant, ce cache est supprimé dès que la page a fini de se charger.

Un cache persistant comme Redis ou Memcached conserve ces résultats entre les visites, de sorte qu'une recherche WordPress par défaut répétée peut éviter la base de données. De nombreux hébergeurs en proposent un, il est donc utile de demander au vôtre.

WordPress réinitialise ses résultats de requête mis en cache chaque fois qu'un article est ajouté ou mis à jour. Ainsi, les gains les plus importants apparaissent sur les sites où le contenu ne change pas souvent.

Si SearchWP exécute votre recherche, sa recherche d'index s'exécute toujours à chaque fois. Le cache d'objets peut toujours accélérer les autres requêtes de la page.

5. Évitez que l'indexation ne concurrence les visiteurs

Un index de recherche doit être créé et maintenu à jour, et ce travail s'exécute sur le même serveur que celui utilisé par vos visiteurs.

SearchWP indexe en arrière-plan, par passes qui s'arrêtent après 60 secondes puis reprennent là où elles se sont arrêtées. Sur l'hébergement mutualisé, vous pouvez alléger chacune de ces passes.

Pour ce faire, allez dans SearchWP » Paramètres et cliquez sur l'onglet Divers. Ensuite, activez Réduire la charge de l'indexeur, qui traite moins de données par passe d'indexation.

paramètre de réduction de la charge de l'indexeur dans SearchWP

L'indexation prend plus de temps avec cette option activée, mais elle exerce moins de pression sur votre serveur pendant que les visiteurs naviguent.

Pendant que vous êtes sur cet onglet, laissez Réanalyser le contenu du document désactivé. Conserver le texte des PDF et des documents déjà extrait accélère les reconstructions d'index.

Vous voudrez également laisser Supprimer la longueur minimale des mots désactivé. Lorsqu'elle est activée, SearchWP indexe également les mots de moins de 3 caractères, ce qui agrandit l'index.

Dans l'onglet Général, Correspondances partielles ne recherche des mots partiels que lorsqu'un mot de recherche n'a pas de correspondance exacte dans l'index. Laisser cette option activée ajoute donc peu de travail aux recherches où chaque mot correspond déjà.

Activer les correspondances partielles et la correspondance la plus proche

Vous pouvez en savoir plus sur chaque option de ces onglets dans la documentation des paramètres de SearchWP.

Si votre site possède une grande bibliothèque de PDF, l'analyse des documents peut être la partie la plus lourde de l'indexation. L'extension SearchWP Xpdf Integration remplace l'outil pdftotext de Xpdf, qui est plus rapide et plus précis que l'analyseur PDF intégré de SearchWP sur les fichiers difficiles à analyser, tant que votre hôte peut l'exécuter.

Notre documentation sur l'intégration Xpdf explique la configuration. Pour les hôtes où l'analyse PDF locale pose des problèmes, l'extension Analyse PDF hors site (Pro et supérieur) envoie l'extraction de texte à un serveur distant à la place.

La recherche en direct ne raccourcira pas la requête de base de données, mais elle change la perception de la vitesse de recherche.

L'extension SearchWP Live Ajax Search affiche les résultats dans une liste déroulante au fur et à mesure que les visiteurs tapent, de sorte qu'ils voient les correspondances avant même d'appuyer sur Entrée.

Comment ajouter la recherche en direct à WordPress gratuitement : à quoi ressemble la recherche en direct finalement

Par défaut, elle attend également qu'un visiteur fasse une pause de 300 millisecondes et ait saisi au moins 3 caractères. Cela évite à votre serveur d'exécuter une nouvelle recherche à chaque frappe.

SearchWP Live Ajax Search est inclus dans tous les plans SearchWP. Notre guide sur l'ajout de la recherche avec saisie semi-automatique en direct couvre la configuration et liste toutes les options.

7. Mettez à jour PHP et votre base de données, puis envisagez l'hébergement

Les versions obsolètes de PHP et de base de données peuvent ralentir l'ensemble de votre site, y compris la recherche.

WordPress recommande PHP 8.3 ou supérieur et MySQL 8.0 ou MariaDB 10.11 ou supérieur. Votre hôte peut vous indiquer les versions utilisées par votre site, et beaucoup vous permettent de changer les versions de PHP depuis le tableau de bord d'hébergement.

La mise à niveau de votre forfait d'hébergement intervient en dernier. Si Query Monitor affiche toujours des requêtes lentes après les corrections ci-dessus, votre serveur n'a peut-être pas assez de ressources pour votre trafic.

Foire aux questions

1. Pourquoi la recherche WordPress est-elle si lente ?

La recherche WordPress est généralement lente car elle parcourt votre contenu à chaque recherche. La recherche par défaut compare chaque mot de recherche au titre, à l'extrait et au contenu de vos articles, elle effectue donc plus de travail à mesure que votre site grandit.

Un index de recherche résout ce problème en effectuant ce travail à l'avance.

2. Un plugin de cache accélère-t-il la recherche WordPress ?

Un plugin de cache aide moins que ce que vous pourriez attendre, car chaque recherche crée une URL différente. WP Rocket, par exemple, ne met pas en cache les résultats de recherche par défaut.

Un cache d'objets persistant comme Redis peut aider les recherches WordPress par défaut répétées, bien que WordPress réinitialise ces résultats mis en cache chaque fois qu'un article est modifié.

3. Ai-je besoin d'Elasticsearch ou d'Algolia pour une recherche WordPress rapide ?

La plupart des sites WordPress n'ont pas besoin d'un service de recherche externe. Un plugin de recherche avec son propre index, comme SearchWP, accélère la recherche dans votre propre base de données sans clés API ni tarification basée sur l'utilisation.

Les services hébergés sont plus pertinents pour les catalogues très volumineux avec un développeur pour les maintenir.

4. Un plugin de recherche va-t-il ralentir mon site WordPress ?

SearchWP construit son index en arrière-plan, par courtes passes, afin que les visiteurs puissent continuer à naviguer pendant qu'il fonctionne. Sur un hébergement mutualisé, vous pouvez aller dans SearchWP » Paramètres, cliquer sur l'onglet Divers, et activer Réduire la charge de l'indexeur pour alléger chaque passe.

5. Le nettoyage de ma base de données rend-il la recherche WordPress plus rapide ?

Le nettoyage de votre base de données améliore la vitesse générale du site, mais cela a peu d'effet sur la recherche. La requête de recherche de WordPress lit la table des articles, pas les transients ou les commentaires que les outils de nettoyage suppriment habituellement.

Remplacer l'analyse de recherche par un index fait une bien plus grande différence.

Donnez à vos visiteurs des résultats de recherche plus rapides

Une recherche WordPress lente est généralement due à la requête, donc les corrections qui aident le plus sont celles qui modifient la façon dont la recherche trouve ses résultats.

Nous espérons que cet article vous a aidé à comprendre comment accélérer la recherche WordPress. Vous voudrez peut-être aussi consulter nos guides sur les moyens d'améliorer la recherche WordPress et la correction des problèmes d'indexation de la recherche WordPress.

Prêt à arrêter de faire attendre vos visiteurs pour obtenir des résultats ? Vous pouvez commencer avec SearchWP ici. Chaque forfait est accompagné d'une garantie de remboursement de 14 jours.

Créez dès aujourd'hui une meilleure expérience de recherche WordPress

Ne perdez plus jamais de visiteurs à cause de résultats de recherche inutiles. SearchWP rend la création de votre propre recherche WordPress intelligente rapide et facile.

Obtenez SearchWP maintenant
Icône de moteurs de recherche multiples