Recherche efficace de contenu

:bookmark: Ce guide fournit un aperçu complet des capacités de recherche de Discourse, y compris les filtres, les options et les techniques avancées.

:person_raising_hand: Niveau d’utilisateur requis : Tous les utilisateurs

Discourse offre une puissante fonctionnalité de recherche avec de nombreux filtres et critères. Lorsque vous utilisez le formulaire de recherche avancée, il ajoute automatiquement la syntaxe appropriée à votre requête. Par exemple, sélectionner Dans mes messages ajoutera in:personal à votre requête de recherche.

Ce guide couvre toutes les options et fonctionnalités de recherche disponibles dans Discourse, et fournit des conseils et astuces utiles pour utiliser la fonction de recherche.

Filtres

Discourse fournit une large gamme de filtres pour vous aider à affiner vos résultats de recherche. Voici une liste complète des filtres disponibles :

Syntaxe Description
in:personal-direct Renvoie uniquement les messages dans les messages personnels entre deux utilisateurs
in:all-pms :information_source: Pour les administrateurs uniquement Renvoie les messages de tous les messages personnels, y compris ceux auxquels vous ne participez pas
in:all Renvoie les messages des sujets publics et des messages personnels
in:tagged Renvoie les messages des sujets qui ont au moins une étiquette
in:untagged Renvoie les messages des sujets sans étiquettes
in:seen Renvoie les messages que vous avez vus (pour les utilisateurs connectés)
in:unseen Renvoie les messages que vous n’avez pas vus (pour les utilisateurs connectés)
in:wiki Renvoie les messages wiki
in:watching Renvoie les messages des sujets que vous suivez
in:tracking Renvoie les messages des sujets que vous suivez
posts_count:X Renvoie les messages des sujets qui ont exactement X messages
min_posts:X Renvoie les messages des sujets avec au moins X messages
max_posts:X Renvoie les messages des sujets avec au plus X messages
min_views:X Renvoie les messages des sujets avec au moins X vues
max_views:X Renvoie les messages des sujets avec au plus X vues
badge:name_or_id Renvoie les messages liés à l’attribution d’un badge spécifique
created:@username Renvoie les messages des sujets créés par username
group:group_name Renvoie les messages des utilisateurs du groupe group_name
group_messages:group_name Renvoie les messages des messages personnels envoyés au groupe group_name
personal_messages:username :information_source: Pour les administrateurs uniquement Renvoie les messages personnels de l’utilisateur spécifié
-tags:tag1,tag2,tag3 Renvoie les messages non étiquetés avec tag1, tag2 ou tag3
filetypes:ext1,ext2,ext3 Renvoie les messages avec des téléchargements des extensions de fichier ext1, ext2 ou ext3
categories:category1,category2 Renvoie les messages des catégories category1 et category2
status:open Renvoie les messages des sujets qui ne sont pas fermés ou archivés
status:closed Renvoie les messages des sujets fermés
status:archived Renvoie les messages des sujets archivés
status:noreplies Renvoie les messages des sujets sans réponses
status:single_user Renvoie les messages des sujets avec des messages d’un seul utilisateur
status:public Renvoie les messages des sujets dans des catégories publiques
before:YYYY-MM-DD Renvoie les messages créés avant la date spécifiée
after:YYYY-MM-DD Renvoie les messages créés après la date spécifiée
with:images Renvoie les messages contenant des images

Ordre

Vous pouvez trier vos résultats de recherche en utilisant les options d’ordre suivantes :

Syntaxe Description
order:latest Trie les résultats du plus récent au plus ancien (raccourci : l)
order:oldest Trie les résultats du plus ancien au plus récent
order:latest_topic Trie les résultats par date de sujet, du plus récent au plus ancien
order:oldest_topic Trie les résultats par date de sujet, du plus ancien au plus récent
order:views Trie les résultats par nombre de vues
order:likes Trie les résultats par nombre de likes
order:read (connecté uniquement) trie par date de votre dernière visite du sujet (raccourci : r)

Alias

Discourse fournit plusieurs alias pour faciliter la recherche :

Syntaxe Équivalent
l order:latest
in:personal in:messages
min_post_count: min_post:
in:mine in:created
category: categories:
# Peut être utilisé pour les catégories et les étiquettes, selon le contexte
user: @
@me @your_own_username
f in:first
t in:title

Recherche de mots exacts

Discourse utilise une technique appelée racinisation pour trouver des mots apparentés. Bien que cela soit souvent utile, il peut y avoir des moments où vous souhaitez rechercher un mot exact. Vous pouvez le faire en entourant votre mot d’espaces et de guillemets doubles, comme ceci : " terme ".

Cela garantit qu’il recherchera uniquement le mot « terme » et exclura d’autres mots apparentés.

:information_source: Notez que comme les espaces sont considérés comme faisant partie du terme de recherche, il ne renverra pas « terme » s’il s’agit du premier ou du dernier mot d’un message, car il ne sera pas précédé ou suivi d’un espace.

Exemple : Recherche de @mentions

Actuellement, la recherche de @mentions n’est pas directement prise en charge. Cependant, vous pouvez y parvenir en utilisant la méthode de recherche de mots exacts :

https://meta.discourse.org/search?q="%20%40username%20"

:information_source: Cela fonctionne car %20 est la façon dont les espaces sont encodés dans les URL et %40 est la façon dont le symbole @ est encodé.

Cette requête recherchera spécifiquement @username (entouré d’espaces).

Combinaison d’options de recherche

Vous pouvez combiner plusieurs options de recherche pour créer des requêtes plus spécifiques. Par exemple :

  • status:open category:support tag:urgent after:2023-01-01 order:latest
    Cela recherchera les sujets de support ouverts étiquetés comme urgents, créés après le 1er janvier 2023, et triera les résultats par le dernier message.

  • @jane_doe in:watching min_posts:5 with:images
    Cela recherchera les messages de Jane Doe dans les sujets que vous suivez, avec au moins 5 messages, et contenant des images.

Permissions et limitations

Certaines options de recherche avancée peuvent nécessiter certaines permissions utilisateur ou être limitées à des rôles utilisateur spécifiques. Par exemple :

  • in:all-pms n’est disponible que pour les administrateurs, pas pour les utilisateurs réguliers ou les modérateurs.
  • personal_messages:username n’est disponible que pour les administrateurs.

Tenez toujours compte de votre rôle utilisateur et de vos permissions lorsque vous utilisez des options de recherche avancée.

Alternative de recherche : Filtre de liste de sujets

Une fonctionnalité expérimentale /filter est disponible et prend en charge de nombreux types de filtres. Vous pouvez en savoir plus sur le sujet officiel : Experimental topics list filter feature

Fichiers source

Pour un aperçu plus technique de ces options, tous les filtres et paramètres de recherche se trouvent dans search.rb - recherchez les méthodes advanced_filter.

Conseils supplémentaires

  1. Vous pouvez également rechercher des mentions d’étiquettes comme Bug : https://meta.discourse.org/search?q=“%20%23bug”

  2. Certains filtres peuvent être ajoutés par des plugins. Par exemple, le plugin Solved ajoute :

    • status:solved : Renvoie les messages des sujets résolus
    • status:unsolved : Renvoie les messages des sujets non résolus dans les catégories autorisant le marquage comme résolu
  3. Le plugin Topic Voting ajoute une option de tri supplémentaire :

    • order:votes : Trie les résultats par nombre de votes sur le sujet contenant le message

:bulb: Prenez le temps d’expérimenter différentes combinaisons de filtres et d’options pour trouver la stratégie de recherche la plus efficace pour vos besoins.

12 « J'aime »

Étant donné que certains filtres manquent, comme in:pinned ou in:bookmarks, et que ceux qui ont un alias ne sont pas expliqués, j’ai essayé d’ajouter les informations manquantes. Le tableau est alors devenu assez complexe, c’est pourquoi j’ai essayé de le diviser en tableaux plus petits. C’est quelque chose que le bot a également fait ici. Je ne suis pas sûr que toutes les explications soient correctes. Les descriptions dans le sujet et celles dans la conversation de @sam avec le bot diffèrent. Pour certaines, j’ai même redemandé au bot et obtenu un autre résultat (ce sont celles mises en surbrillance). Peut-être que quelqu’un peut aider à corriger les descriptions. Je ne suis pas non plus entièrement satisfait de l’apparence générale. Les colonnes du tableau ont toutes des largeurs différentes.


Filtres

Filtres de recherche

Syntaxe Description
topic:topic_id Renvoie les messages d’un sujet spécifique
in:title
t
Renvoie les sujets avec le terme dans le titre
in:first
f
Renvoie uniquement les premiers messages des sujets
in:pinned Renvoie les messages épinglés
in:wiki Renvoie les messages wiki
in:whisper
in:whispers
:information_source: Pour les utilisateurs ayant un accès whisper uniquement
Renvoie les messages whisper
with:images Renvoie les messages contenant des images
filetypes:ext1,ext2,ext3 Renvoie les messages avec des fichiers téléversés des extensions ext1, ext2 ou ext3
badge:name_or_id Renvoie les messages liés à l’attribution d’un badge spécifique
in:regular Exclut les petits messages d’action, les whispers et les messages avec la couleur du personnel appliquée
in:all Renvoie les messages des sujets publics et des messages personnels
include:unlisted
include:invisible
:information_source: Pour les niveaux de confiance 4 et le personnel uniquement
Renvoie les messages, y compris ceux des sujets non listés

Filtres de message

(pour les utilisateurs connectés)

Syntaxe Description
in:personal
in:messages
Renvoie les messages dans les messages personnels
in:personal-direct Renvoie uniquement les messages personnels entre deux utilisateurs
group_messages:group_name Renvoie les messages personnels envoyés au groupe group_name
personal_messages:username :information_source: Pour les administrateurs uniquement
Renvoie les messages personnels de l’utilisateur spécifié
in:all-pms :information_source: Pour les administrateurs uniquement
Renvoie tous les messages personnels, y compris ceux auxquels vous ne participez pas

Filtres spécifiques aux utilisateurs et aux groupes

Syntaxe Description
@username
user:username
Renvoie les messages de username
created:@username
in:first @username
Renvoie les premiers messages des sujets créés par username
group:group_name Renvoie les messages des utilisateurs du groupe group_name
in:bot
in:bots
Renvoie les messages des comptes système et des bots (par exemple, @system, @discobot)
in:human
in:humans
Renvoie les messages des utilisateurs réguliers

Filtres de catégorie et d’étiquette

Syntaxe Description
category:category1
#category1
Renvoie les messages de category1
categories:category1,category2
category:category1,category2
Renvoie les messages des catégories category1 et category2
tag:tag1
#tag1
Renvoie les messages des sujets étiquetés avec tag1
-tag:tag1 Renvoie les messages des sujets non étiquetés avec tag1
tags:tag1,tag2
tag:tag1,tag2
Renvoie les messages des sujets étiquetés avec tag1 ou tag2
-tags:tag1,tag2
-tag:tag1,tag2
Renvoie les messages des sujets non étiquetés avec tag1 ou tag2
tags:tag1+tag2
tag:tag1+tag2
Renvoie les messages des sujets étiquetés avec tag1 et tag2
-tags:tag1+tag2
-tag:tag1+tag2
Renvoie les messages des sujets non étiquetés avec tag1 et tag2
in:tagged Renvoie les messages des sujets qui ont au moins une étiquette
in:untagged Renvoie les messages des sujets sans étiquette

Filtres personnalisés (spécifiques à l’utilisateur)

(pour les utilisateurs connectés)

Syntaxe Description
in:seen Renvoie les messages que vous avez vus
in:unseen Renvoie les messages que vous n’avez pas vus
in:watching Renvoie les messages des sujets que vous suivez
in:tracking Renvoie les messages des sujets que vous suivez
in:bookmarks Renvoie les messages que vous avez mis en favoris
@me
@your_own_username
Renvoie les messages écrits par vous
in:posted Renvoie tous les messages des sujets dans lesquels vous avez posté
in:created
in:mine
Renvoie les premiers messages des sujets écrits par vous

Filtres de nombre de messages et de vues

Syntaxe Description
min_posts:X
min_post_count:X
Renvoie les messages des sujets ayant au moins X messages
max_posts:X Renvoie les messages des sujets ayant au plus X messages
posts_count:X Renvoie les messages des sujets ayant exactement X messages
min_views:X Renvoie les messages des sujets ayant au moins X vues
max_views:X Renvoie les messages des sujets ayant au plus X vues

Filtres de date

Toutes les dates sont en UTC, nous utilisons toujours le début de la journée UTC comme heure de début pour toute période.

Syntaxe Description
before:YYYY-MM-DD Renvoie les messages créés avant la date spécifiée
after:YYYY-MM-DD Renvoie les messages créés après la date spécifiée
before:day_of_week Renvoie les messages créés avant le jour de la semaine spécifié
after:day_of_week Renvoie les messages créés le jour de la semaine spécifié et après
before:X Renvoie les messages créés il y a plus de X jours
after:X Renvoie les messages créés au cours des X derniers jours
before:month Renvoie les messages créés avant le mois spécifié
after:month Renvoie les messages créés dans et après le mois spécifié
before:YYYY Renvoie les messages créés avant l’année spécifiée
after:YYYY Renvoie les messages créés dans et après l’année spécifiée

Filtres de statut

Syntaxe Description
status:open Renvoie les messages des sujets qui ne sont pas fermés ou archivés
status:closed Renvoie les messages des sujets fermés
status:archived Renvoie les messages des sujets archivés
status:noreplies Renvoie les messages des sujets sans réponse
status:single_user Renvoie les messages des sujets avec des messages d’un seul utilisateur
status:public Renvoie les messages des sujets dans des catégories publiques

Filtres ajoutés par les plugins

Syntaxe Description
Assign
in:assigned Renvoie les messages des sujets qui vous sont assignés
in:unassigned Renvoie les messages des sujets qui ne sont assignés à personne
assigned:username Renvoie les messages des sujets assignés à username
Docs
in:docs
in:kb
Renvoie les messages des catégories et étiquettes incluses dans les docs
Doc Categories
in:docs Renvoie les messages des catégories qui ont un sujet d’index
Polls
in:polls Renvoie les messages contenant des sondages
Solved
status:solved Renvoie les messages des sujets résolus
status:unsolved Renvoie les messages des sujets non résolus dans les catégories autorisant le marquage comme résolu
Topic voting
min_vote_count:X Renvoie les messages des sujets ayant au moins X votes

Ordre

Syntaxe Description
order:latest
l
Trie les résultats du plus récent au plus ancien
order:oldest Trie les résultats du plus ancien au plus récent
order:latest_topic Trie les résultats par date de sujet, du plus récent au plus ancien
order:oldest_topic Trie les résultats par date de sujet, du plus ancien au plus récent
order:views Trie les résultats par nombre de vues
order:likes Trie les résultats par nombre de likes
order:read
r
:information_source: Pour les utilisateurs connectés uniquement
Trie les résultats par la date de votre dernière visite du sujet

Options d’ordre ajoutées par les plugins

Syntaxe Description
Topic voting
order:votes Trie les résultats par nombre de votes sur le sujet contenant le message
4 « J'aime »

Je pense que c’est la même chose que @me

1 « J'aime »

Existe-t-il un moyen d’exclure les réponses afin que seules les discussions apparaissent dans une recherche ?

Oui

3 « J'aime »

Merci beaucoup.

1 « J'aime »

Ce lien mène-t-il à la page prévue ?

Je pense que oui. Il vous emmène à la liste des sujets avec la barre de filtre en haut.

À quoi vous attendiez-vous ?

Je vois. Cliquer sur le lien affiche ceci :

donc si vous ne savez pas ce qu’est une barre de filtre, vous ne pouvez pas la découvrir ! Merci d’avoir envoyé ce que le lecteur est censé voir.

1 « J'aime »

J’ai trouvé ceux-ci plus faciles à lire avec les sauts de ligne.