Recherche Algolia dans Discourse

:discourse2: Summary Discourse Algolia Search integrates Algolia with Discourse search.
:hammer_and_wrench: Repository Link https://github.com/discourse/discourse-algolia
:open_book: Install Guide How to install plugins in Discourse

Features

I’ve recently created a plugin that indexes topics, posts, users and tags with Algolia and combines them into a multi-category autocomplete search. Here’s a GIF of how it works:

You can find the Github repository, complete with installation instructions, on github at algolia/discourse-algolia.

Plugin configuration just requires populating a few fields. Indexing tasks are put in the jobs queue after objects are saved. Note: you will need to create an Algolia account, which is free up to 10,000 records.

Configuration

:raising_hand_woman: FAQ

Q: Does this replace the default Discourse search?
A: Only if you want it to, and right now only for the autocomplete in the header. The full search page is still reachable by hitting the enter key without a search result selected, or by using the “advanced search” link in the autocomplete footer. I say “only if you want it to” because you can enable indexing to Algolia but not affect the UI or existing Discourse search in any way - that’s why there are two checkboxes in the plugin settings. If you’re just doing indexing, you can search the data in your Algolia dashboard to see how it’s working.

Q: Do I have to pay to use the plugin?
A: It depends on how much data you have. If you have less than 1k posts, you should fit into Algolia’s free Community Plan, which gives you 10k records. A good rule of thumb is that you’ll need 10 Algolia records for each post, as posts are split up into-paragraph size chunks for optimum relevance and speed. Still, YMMV. If you’d like to use the plugin but have concerns about the cost, just send me an email and I’ll see what we can do. If you are an open source project or a non-profit, you may quality for higher limits, just fill out this form and mention Discourse.

CHANGELOG

2022.11.02

Pushed PR

  • Updated algoliasearch.js to 4.14.2
  • Updated autocomplete.js to 1.7.1

2020.09.08

Pushed 8 commits to GitHub - discourse/discourse-algolia: A plugin for indexing and searching your Discourse with Algolia

  • It should fix the bug where the search box stopped working after multiple page loads. :warning: NOTE: the plugin needs the very latest version of Discourse to work

  • The plugin is now using Discourse scss variables, and will now work correctly in Dark mode

  • Fixed a bug where user search was leading to /users instead of /u and would result in a 404. :warning: NOTE: You will need to reindex users for this to work correctly rake algolia:reindex_users

  • Fxed an alignment issue of the searchbox

  • Applied various coding standards

  • Removed part of the jquery usage

  • Searchbox should be slightly faster, as it’s now tied to rendering instead of arbitrary 100ms wait (also removed the forbidden setTimeout usage)


TODO

pr-welcome for the following tasks:

  • update algoliasearch (ruby)

This would ensure we are not deprecated in the future and allow to import libraries instead of having it in global namespace.

Last edited by @awesomerobot 2025-03-10T20:32:59Z

Check documentPerform check on document:
61 « J'aime »

Le plugin semble se réindexer automatiquement. Quelqu’un peut-il me dire à quelle fréquence il le fait ? Je ne vois aucune documentation à ce sujet.
Merci.

1 « J'aime »

À moins que quelqu’un de la communauté ne connaisse la réponse, il faudra peut-être attendre la semaine prochaine pour obtenir une réponse de l’équipe Discourse à ce sujet.

Je vois que le plugin exécute une tâche toutes les 5 minutes pour traiter tous les objets (messages, sujets, utilisateurs, balises) mis en file d’attente pour indexation : discourse-algolia/app/jobs/scheduled/update_indexes.rb at main · discourse/discourse-algolia · GitHub. Je ne comprends pas clairement ce qui pourrait amener un objet à être réindexé.

Si vous avez une chance de répondre, je suis curieux de savoir ce que vous voyez qui donne l’impression que le contenu est réindexé.

1 « J'aime »

Salut Simon, merci pour ta réponse ! J’ai créé un article de test. Nous avons un compte Algolia. Le lendemain, je me suis connecté et j’ai effectué une recherche pour cet article dans l’administration Algolia et il apparaissait. Je crois que j’avais vérifié immédiatement après avoir posté et je n’avais pas vu l’article dans Algolia. Mais je comprends qu’il doit y avoir un certain délai pendant l’indexation. 5 minutes serait très bien. Je peux essayer un autre article et attendre 10 minutes pour voir s’il est là. Je suis surpris qu’il n’y ait aucune mention de cela dans la documentation.

2 « J'aime »

Je viens de commencer à tester ce plugin. Quelques questions :

  1. Lorsque je recherche un mot-clé, Algolia ne liste que différents paragraphes du même sujet, au lieu de la façon dont Discourse montre des sujets uniques. À moins que ce sujet ne soit la réponse ultime, cette méthode semble plus restrictive et inexacte pour les utilisateurs finaux. Ce comportement devrait-il être configurable ?

  2. Le plugin crée 3 index dans l’application Algolia : un pour chaque type posts, tags et users. Comment puis-je faire en sorte que ce plugin inclue d’autres index disponibles dans mon application Algolia ? Cas d’utilisation : recherche multi-sites via Algolia.

Le dernier point ressemble plus à une demande de fonctionnalité, mais je suis fermement convaincu que le premier doit être une option configurable pour des résultats de recherche utilisables.

1 « J'aime »

Salut,

La recherche avec autocomplétion fonctionne-t-elle aussi pour mobile ? Je ne vois pas qu’elle fonctionne sur le forum Algolia.

Salut,

La communauté Algolia n’est plus disponible, ils ont migré vers Discord

Dire adieu à nos forums Discourse (et à ce qui suit) - Blog Algolia | Algolia

De plus, la conception de l’UX a changé. Elle a l’air plus moderne maintenant. Y a-t-il des plans pour mettre à jour le plugin ?

Et est-il possible de déplacer les boutons « connexion » et « inscription » dans le coin droit (par défaut) et de centrer la barre de recherche, tout comme dans le composant de thème « Header Search » ?

droite

2 « J'aime »

Rien de concret pour le moment, nous avons très peu de clients qui utilisent ce plugin.

3 « J'aime »