Créez votre propre recherche personnalisée sur WordPress
La fonction de recherche par défaut de WordPress est souvent critiquée. Même s’il existe une multitude de plugins destinés à l’améliorer, ils ne répondent pas toujours à vos besoins, particulièrement si vous souhaitez établir un moteur de recherche secondaire avec des exigences spécifiques. Cet article explore la création d’une recherche personnalisée sur WordPress et révèle quelques secrets intéressants.
Développer la recherche WordPress via un formulaire étendu
Au cœur de la fonction de recherche de WordPress se trouve la classe WP_Query. Si vous avez déjà expérimenté des boucles personnalisées, vous êtes sûrement familiarisé avec WP_Query. Cette classe permet une multitude de paramètres qui modifient le comportement de la recherche, dont beaucoup peuvent être insérés directement dans un formulaire de recherche ou dans une URL.
Prenons par exemple un cas simple : transformez une recherche classique en une recherche pour un type de publication personnalisé, tel que « produit ». Il vous suffit de compléter l’URL comme suit :
http://www.votresite.com/?s=football&post_type=product
Ce lien retourne uniquement les résultats pour les publications de type produit dont le titre ou le contenu contient le mot « football ». Les possibilités sont vastes : vous pouvez inclure ou exclure des catégories, ajouter une recherche par taxonomie ou restreindre la recherche à certains auteurs.
Recherche par phrase
Par défaut, WordPress effectue une recherche par mots-clés. Cela signifie que si vous entrez la requête « football boots », WordPress va élaborer une requête qui cherche « football » ET « boots », ce qui peut mener à des résultats déroutants. Pour effectuer une recherche par phrase, ajoutez simplement &sentence=1
à l’URL. Cela va modifier la clause WHERE pour ne rechercher que de manière précise :
((wp_posts.post_title LIKE '%football boots%') OR (wp_posts.post_content LIKE '%football boots%'))
Cela signifie dorénavant que les titres ou les contenus doivent véritablement contenir l’ensemble des mots en tant que phrase pour être trouvés.
Trouver une correspondance exacte
Une recherche exacte est encore plus restrictive, et cela se fait en ajoutant exact=1
à l’URL. La clause WHERE deviendra alors :
((wp_posts.post_title LIKE 'football boots') OR (wp_posts.post_content LIKE 'football boots'))
Il faut faire attention à cette option, car si aucun produit n’a précisément le titre « football boots », il n’y aura tout simplement aucun résultat.
Personnaliser le formulaire de recherche
Le formulaire de recherche par défaut de WordPress est assez basique :
Search for:
Pour modifier le comportement de recherche, il suffit d’ajouter d’autres champs à votre formulaire. Grâce à un nouveau formulaire comme suit :
Search for:
Vous obtiendrez une URL similaire à :
http://www.test.dev/?s={query}&sentence=1&post_type=product
Ceci déclenchera toujours la page de résultats de recherche par défaut, mais les résultats se limiteront aux types de publication produits qui contiennent la phrase recherchée.
Il existe deux méthodes pour modifier le formulaire de recherche standard. Vous pouvez créer un fichier searchform.php
où mettre votre formulaire personnalisé ou utiliser le filtre get_search_form
pour forcer WordPress à utiliser votre propre formulaire.
Quand un formulaire personnalisé ne suffit pas
Bien que vous puissiez faire beaucoup avec un formulaire personnalisé, certaines situations nécessitent de construire votre propre WP_Query et de gérer les résultats manuellement, en particulier si vous souhaitez un moteur de recherche secondaire.
Étude de cas
Prenons l’exemple d’un site de commerce électronique vendant des produits physiques et numériques comme des magazines ou des livrets. L’organisation souhaitait proposer une recherche dans sa « bibliothèque » pour que les visiteurs puissent trouver des phrases précises dans les magazines, qui contiennent une table des matières complète.
Le site avait déjà une recherche de produit mais les résultats étaient souvent décevants : trop de résultats non pertinents, tous les produits étaient inclus, et les résultats ne montraient pas clairement où le terme de recherche correspondait.
Pour remédier à cela, une nouvelle fonction de recherche a été mise en place qui :
- Imposa une recherche par phrase plutôt que par mots-clés.
- Restreint la recherche aux catégories de magazines et de livrets.
- Affiche et met en valeur le texte contenant la correspondance du terme recherché.
Un formulaire de recherche personnalisé répondit à certains de ces critères, mais ne déterminait pas la mise en page des résultats ni la manière de surligner la phrase. Pour cela, une nouvelle template de page a été construite.
Logique de recherche
Dans cette template, le formulaire conserve une structure proche de celle de WordPress, mais la manipulation de la recherche se fait dans le WP_Query où l’on passe les paramètres suivants :
- Type de publication défini à « produit ».
- L’option
sentence
est activée pour la recherche par phrase. - Un paramètre taxonomie restreignant la recherche aux catégories de produits.
- Les résultats s’affichent par date et ordre du menu.
Pour cette solution, il est à noter qu’aucune pagination n’est nécessaire, surtout si la recherche par phrase est appliquée.
Une fois la WP_Query exécutée, il faut afficher les résultats, ce qui nécessite des fonctions supplémentaires : une pour extraire le texte contenant la phrase de recherche et une autre pour surligner la phrase. Le surlignage peut s’accomplir avec une simple expression regex.
Avantages d’un moteur de recherche personnalisé
Les formulaires et fonctions de recherche personnalisés sont idéaux si vous voulez intégrer une recherche secondaire qui fonctionne parallèlement à la recherche principale, surtout lorsque vous avez des exigences spécifiques. Dans de nombreux cas, vous pourriez être en mesure d’atteindre vos objectifs simplement en ayant un formulaire personnalisé qui passe les paramètres corrects à la recherche existante. Il suffit de tester cela avant de vous engager dans le développement complet d’une fonction de recherche personnalisée.
Concevoir votre propre moteur de recherche vous donne accès à une gamme encore plus vaste de paramètres pour contrôler le comportement de la recherche. Vous n’avez pas à craindre d’expérimenter, car avec un peu de pratique, vous découvrirez que la création d’une recherche personnalisée sur WordPress peut être à la fois accessible et enrichissante. Vous serez ainsi capable d’offrir à vos utilisateurs exactement ce dont ils ont besoin, tout en maximisant l’efficacité de la recherche sur votre site.
Télécharger Custom Google Search Plugins gratuitement
Le voici, télécharger Custom Google Search Plugins gratuitement sur OrangoGPL est entièrement viable et légal.
Vraiment, même télécharger un Custom Google Search cracké est conforme à la loi, parce que la licence sous laquelle il est distribué est la General Public License, et cette licence autorise à quiconque sa distribution libre.
Donc, vous n’avez pas de quoi vous inquiéter: Si vous étiez en quête de acheter Custom Google Search à bon marché ou, directement, télécharger Custom Google Search Plugins nulled et, de cette manière, l’avoir cent pour cent gratuitement, maintenant, vous pouvez le faire légitimement.
Télécharger Custom Google Search GPL: Une excellente choix pour les entrepreneurs qui commencent
Peu importe comment vous le nommez: Réductions pour Custom Google Search, télécharger Custom Google Search Plugins GPL, télécharger Custom Google Search sans licence ou télécharger Custom Google Search Plugins cracké.
C’est cent pour cent légal et quelque chose de indispensable pour chaque entrepreneur en début de parcours.
Avis
Il n’y a pas encore d’avis.