web-dev-qa-db-fra.com

Comment changer l'algorithme principal de post-recherche? Où est-il trouvé/construit?

Wordpress et woocommerce sont installés et j'ai remarqué que la recherche de produit de woocommerce semble utiliser la recherche de wordpress. Eh bien, je n'aime pas la recherche, et je préfère la modifier fondamentalement plutôt que d'ajouter des pages supplémentaires et ainsi de suite. Où se trouve le code principal?

J'ai lu que le code principal effectue une requête LIKE%% sur post_content AND post-title et je souhaite le modifier afin qu'il ne recherche que le titre. Je veux savoir où se trouve le/core/code au cas où je souhaiterais ajouter des fonctionnalités supplémentaires à l'avenir (je le ferai probablement), je ne veux pas simplement ajouter un filtre de titre au-dessus des résultats de recherche, ce qui serait la solution la plus simple. , mais je ne cherche pas facilement, je recherche le contrôle complet de mon site Web.

Cependant, faire une recherche GREP pour "SELECT * from wp_posts" ne donne rien d’utile à part mon plugin W3 Super Cache. Où se trouve ce code d'algorithme de recherche? Ce n'est sûrement pas un exécutable mystique, non modifiable, codé en binaire.

1
Andrew Wheels

Petite astuce - ne modifiez jamais, jamais WP fichiers de base. Les mises à jour sont publiées plusieurs fois par an et vous perdrez vos modifications, entre autres raisons (telles que la sécurité).

Votre thème et le fichier modèle en question déterminent le traitement de la recherche WP. En supposant qu’aucun plug-in de recherche n’est actif et que votre thème appelle get_search_form(), vous pouvez suivre le chemin logique indiqué dans la page WordPress Codex pour cette fonction: https://codex.wordpress.org/ Function_Reference/get_search_form

WordPress recherchera un fichier searchform.php dans le thème actif. S'il en trouve un, il le charge. Sinon, il revient au formulaire de recherche principal. Par conséquent, la méthode appropriée pour modifier le formulaire de recherche principal WP consiste à vous assurer que votre thème (ou thème enfant) dispose d'un fichier searchform.php.

En cela, vous pouvez créer une requête personnalisée pour rechercher uniquement les valeurs pour lesquelles vous souhaitez obtenir des résultats.

1
jdm2112