La manière la plus simple d'implémenter un classement de pertinence pour les résultats de recherche en utilisant des tags?

Bonjour ! J’ai configuré ma première instance de Discourse il y a quelques semaines, en utilisant le thème Fakebook pour adapter Discourse en vue de son utilisation comme plateforme de médias sociaux de niche. J’ai expérimenté avec des plugins et j’apprécie beaucoup le processus de développement. C’est un outil génial, merci à tous ceux qui l’ont créé.

J’utilise beaucoup le marquage des publications pour déterminer quelles publications sont pertinentes pour quels utilisateurs. J’ai trois groupes de tags, et les publications sont automatiquement taguées ou manuellement taguées avec au moins un tag de chaque groupe, donc au moins trois tags par publication. Les utilisateurs ont une page de paramètres où ils peuvent choisir les tags qui les intéressent particulièrement.

Dans le flux principal, je voudrais montrer aux utilisateurs toutes les publications, et je voudrais que les publications avec plus de tags préférés de l’utilisateur apparaissent plus haut dans le flux. Ainsi, si une publication a trois des tags préférés de l’utilisateur, elle apparaîtra plus haut dans le flux pour cet utilisateur qu’une publication n’ayant que deux de ses tags préférés. Cela peut être “flou”, et idéalement, ce serait formidable si cela s’intégrait à toute recherche. En d’autres termes, chaque fois qu’un utilisateur effectue une recherche, les résultats de recherche avec ses tags préférés sont “boostés” et apparaissent plus près du haut, avec plus de tags fournissant un boost plus fort.

Je pense qu’une façon simple de mettre cela en œuvre serait de créer un plugin qui attribue un code textuel à chaque tag, et lorsqu’un sujet reçoit un tag, le plugin ajoute le code textuel dans le corps de la première publication, dans une div cachée. Ensuite, je pourrais ajouter automatiquement les codes textuels des tags préférés de l’utilisateur à toutes les recherches. Si cela fonctionnait comme je le pense, cela pourrait permettre aux tags préférés d’influencer la pertinence de la recherche sans modifier la fonctionnalité de recherche principale.

Pour ceux d’entre vous qui ont de l’expérience dans le développement de Discourse, avez-vous d’autres suggestions pour de meilleures façons de mettre cela en œuvre ? Et, pensez-vous que l’idée des codes textuels fonctionnerait ?

Merci beaucoup !

2 « J'aime »

Merci @codinghorror d’avoir correctement catégorisé ceci. Je n’étais pas sûr si « fonctionnalité » incluait le développement de plugins.