web-dev-qa-db-fra.com

Ajouter des résultats de recherche personnalisés au principal WP chercher

Je sais, cette question a déjà été posée à plusieurs reprises, mais je n’ai pas trouvé la réponse adaptée à ma tâche. J'ai déjà posé la même question sur StackOverflow , mais je suppose que cette communauté est plus sensible aux questions relatives à WordPress.

Je souhaite rechercher dans le forum le même mot clé, puis simplement ajouter des résultats au tableau de résultats de recherche WP existant. Dans Joomla, il existe un événement pour cela, qui vous permet d'ajouter des recherches personnalisées par plugins. Ce n'est que lorsque tous les plugins ont été activés que la pagination est calculée. WordPress semble fonctionner de manière très différente et me déroute en ce moment.

La condition principale: cela DOIT fonctionner sur search.php , donc les pages de recherche personnalisées ne sont pas une solution.

J'ai ajouté le hook pre_get_posts à mon plugin et interrogé le forum par le même mot clé. Puis ajusté l'apparence des résultats du forum avec les hooks the_permalink, author_link, the_author, the_category. J'ai même changé le nombre de messages trouvés et la pagination montre maintenant le nombre approprié de pages. Aucun problème avec ça.

Ce qui me pose problème, c’est le comportement de la pagination et l’interrogation du forum, lorsque WordPress n’a plus de critères de publication correspondants.

En résumé, les résultats du forum doivent être ajoutés aux résultats de WP et, idéalement, triés par critères (titre, date, etc.).

Quelqu'un peut-il me donner un exemple où et quand dois-je ajouter correctement mes résultats? Honnêtement, je suis un peu perdu ici.

Une petite mise à jour ...

Joomla a un algorithme très simple dans le traitement des résultats de différents plugins (requêtes). Il interroge d'abord sa propre base de données, puis appelle tous les plug-ins liés à la recherche et leur transmet le tableau actuel des résultats. Chaque plugin ajoute simplement ses propres résultats à ce tableau. Et alors seulement, la pagination est calculée. Peasy facile.

Fondamentalement, j'ai besoin de la même chose: en quelque sorte, pousser les résultats du forum dans le tableau de résultats WP et faire en sorte que la pagination fonctionne. Je ne veux pas que le forum soit recherché depuis un widget et les résultats affichés sur une autre page de recherche. Je sais comment y arriver.

3
The Krotek

Je pense que j'ai trouvé une solution by gmazapp . Au moins, cela a fonctionné pour moi. C'est un peu hacky-ish, mais fait le travail plutôt bien, donc je le partage, si quelqu'un recherche la même chose dans le futur.

0
The Krotek