Rechercher du contenu efficacement

: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 fonctionnalité de recherche puissante avec de nombreux filtres et critères. Lorsque vous utilisez le formulaire de recherche avancée, il ajoute automatiquement la syntaxe pertinente à votre requête. Par exemple, sélectionner \[x\] 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 Retourne uniquement les messages dans les messages personnels entre deux utilisateurs
in:all-pms :information_source: Pour les administrateurs uniquement
Retourne les messages de tous les messages personnels, y compris ceux auxquels vous ne participez pas
in:all Retourne les messages des sujets publics et des messages personnels
in:replies Retourne uniquement les messages qui sont des réponses, exclut les OP de sujet
in:all-posts Retourne chaque message qui correspond à la requête, même lorsque plusieurs messages correspondent dans le même sujet
in:tagged Retourne les messages des sujets qui ont au moins une étiquette
in:untagged Retourne les messages des sujets sans étiquettes
in:seen Retourne les messages que vous avez vus (pour les utilisateurs connectés)
in:unseen Retourne les messages que vous n’avez pas vus (pour les utilisateurs connectés)
in:wiki Retourne les messages wiki
in:watching Retourne les messages des sujets que vous suivez
in:tracking Retourne les messages des sujets que vous suivez
posts_count:X Retourne les messages des sujets qui ont exactement X messages
min_posts:X Retourne les messages des sujets ayant au moins X messages
max_posts:X Retourne les messages des sujets ayant au plus X messages
min_views:X Retourne les messages des sujets ayant au moins X vues
max_views:X Retourne les messages des sujets ayant au plus X vues
badge:name_or_id Retourne les messages liés à l’attribution d’un badge spécifique
created:@username Retourne les messages des sujets créés par username
group:group_name Retourne les messages des utilisateurs faisant partie du groupe group_name
group_messages:group_name Retourne les messages des messages personnels envoyés au groupe group_name
personal_messages:username :information_source: Pour les administrateurs uniquement
Retourne les messages des messages personnels de l’utilisateur spécifié
-tags:tag1,tag2,tag3 Retourne les messages qui ne sont pas étiquetés avec tag1, tag2 ou tag3
filetypes:ext1,ext2,ext3 Retourne les messages avec des téléchargements des extensions de fichier ext1, ext2 ou ext3
categories:category1,category2 Retourne les messages des catégories category1 et category2
status:open Retourne les messages des sujets qui ne sont pas fermés ou archivés
status:closed Retourne les messages des sujets fermés
status:archived Retourne les messages des sujets archivés
status:noreplies Retourne les messages des sujets sans réponses
status:single_user Retourne les messages des sujets avec des messages d’un seul utilisateur
status:public Retourne les messages des sujets dans des catégories publiques
before:YYYY-MM-DD Retourne les messages créés avant la date spécifiée
after:YYYY-MM-DD Retourne les messages créés après la date spécifiée
with:images Retourne 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 “j’aime”
order:read (connecté uniquement) trier par la date de votre dernière visite au 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 @votre_propre_nom_utilisateur
f in:first
t in:title

Recherche de mots exacts

Discourse utilise une technique appelée Stemming 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 les autres mots apparentés.

:information_source: Notez que comme les espaces sont considérés comme faisant partie du terme de recherche, il ne retournera 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 mot exact :

\u003chttps://meta.discourse.org/search?q=“%20%40username%20”\u003e

: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
    Ceci 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 message le plus récent.
  • @jane_doe in:watching min_posts:5 with:images
    Ceci 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ées peuvent nécessiter certaines autorisations d’utilisateur ou peuvent être limitées à des rôles d’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 d’utilisateur et de vos autorisations lorsque vous utilisez les options de recherche avancée.

Alternative de recherche : Filtre de liste de sujets

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

Fichiers sources

Pour un examen plus technique de ces options, tous les filtres et paramètres de recherche peuvent être trouvés dans search.rb - recherchez les méthodes advanced_filter.

Conseils supplémentaires

  1. Vous pouvez également rechercher des mentions d’étiquettes comme Bug : \u003chttps://meta.discourse.org/search?q=“%20%23bug”\u003e
  1. Certains filtres peuvent être ajoutés par des plugins. Par exemple, le plugin Solved ajoute :
  • status:solved : Retourne les messages des sujets résolus
  • status:unsolved : Retourne les messages des sujets non résolus dans les catégories autorisant le marquage comme résolu
  1. Le plugin Topic Voting ajoute une option d’ordre supplémentaire :
  • order:votes : Trie les résultats par le nombre de votes sur le sujet contenant le message

:bulb: Prenez le temps d’expérimenter avec 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. Ensuite, le tableau est devenu assez complexe, c’est pourquoi j’ai essayé de le séparer 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 certains, j’ai même redemandé au bot et obtenu un autre résultat (ceux qui sont surlignés). 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 Retourne les messages dans un sujet spécifique
in:title
t
Retourne les sujets avec le terme dans le titre
in:first
f
Retourne uniquement les premiers messages des sujets
in:replies Retourne uniquement les messages qui sont des réponses, exclut les OP de sujet
in:regular Exclut les petits messages d’action, les murmures et les messages avec une couleur de personnel appliquée
in:whispers
in:whisper
:information_source: Pour les utilisateurs ayant un accès aux murmures uniquement
Retourne les messages murmures
include:unlisted
include:invisible
:information_source: Pour les niveaux de confiance 4 et le personnel uniquement
Retourne les messages, y compris ceux des sujets non listés
in:all :information_source: Pour les utilisateurs connectés uniquement
Retourne les messages des sujets publics et des messages personnels
in:all-posts Retourne chaque message qui correspond à la requête, même lorsque plusieurs messages correspondent dans le même sujet
in:pinned Retourne les messages épinglés
in:wiki Retourne les messages wiki
with:images Retourne les messages contenant des images
filetypes:ext1,ext2,ext3
filetype:ext1,ext2,ext3
Retourne les messages avec des téléchargements des extensions de fichier ext1, ext2 ou ext3
badge:name_or_id Retourne les messages liés à l’attribution d’un badge spécifique

Filtres de message

(pour les utilisateurs connectés)

Syntaxe Description
in:personal
in:messages
Retourne les messages des messages personnels
in:personal-direct Retourne les messages des messages personnels entre vous et exactement un autre utilisateur
group_messages:group_name_or_id Retourne les messages des messages personnels envoyés au groupe group_name (Ceci ne fonctionne que si le groupe et ses membres vous sont visibles)
personal_messages:username :information_source: Pour les administrateurs uniquement
Retourne les messages des messages personnels de l’utilisateur spécifié
in:all-pms :information_source: Pour les administrateurs uniquement
Retourne les messages de tous les messages personnels, y compris ceux auxquels vous ne participez pas

Filtres spécifiques à l’utilisateur et au groupe

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

Filtres de catégorie et d’étiquette

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

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

(pour les utilisateurs connectés)

Syntaxe Description
in:seen Retourne les messages que vous avez vus
in:unseen Retourne les messages que vous n’avez pas vus
in:watching Retourne les messages des sujets que vous suivez
in:tracking Retourne les messages des sujets que vous suivez (tracking)
in:bookmarks Retourne les messages que vous avez mis en favoris
@me
@your_own_username
Retourne les messages écrits par vous
in:posted Retourne tous les messages des sujets dans lesquels vous avez posté
in:created
in:mine
Retourne 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
Retourne les messages des sujets ayant au moins X messages
max_posts:X Retourne les messages des sujets ayant au plus X messages
posts_count:X Retourne les messages des sujets ayant exactement X messages
min_views:X Retourne les messages des sujets ayant au moins X vues
max_views:X Retourne les messages des sujets ayant au plus X vues

Filtres de date

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

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

Filtres d’état

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

Filtres de langue

Syntaxe Description
locale:language_code Retourne les messages écrits dans cette langue ex: en, en_US, en-gb
locale:any
locale:present
Retourne les messages qui ont une locale définie
locale:none
locale:null
Retourne les messages sans locale

Filtres ajoutés par les Plugins

Syntaxe Description
Assign
in:assigned Retourne les messages des sujets assignés à quelqu’un
in:unassigned Retourne les messages des sujets non assignés à quelqu’un
assigned:username Retourne les messages des sujets assignés à username
Docs
in:docs
in:kb
Retourne les messages des catégories et étiquettes incluses dans les docs
Doc Categories
in:docs Retourne les messages des catégories qui ont un sujet d’index
Polls
in:polls Retourne les messages contenant des sondages
Solved
status:solved Retourne les messages des sujets résolus
status:unsolved Retourne les messages des sujets non résolus dans les catégories permettant le marquage comme résolu
Topic voting
min_vote_count:X Retourne 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 “j’aime”
order:read
r
:information_source: Pour les utilisateurs connectés uniquement
Trie les résultats par la date de votre dernière visite au sujet

Options d’ordre ajoutées par les Plugins

Syntaxe Description
Topic voting
order:votes Trie les résultats par le nombre de votes sur le sujet contenant le message
5 « 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

5 « 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.

Le tableau dans le message initial a été mis à jour pour inclure les nouveaux filtres in:all-posts et in:replies annoncés dans Search improvements to make community management easier!

3 « J'aime »

Merci. J’aurais apprécié que vous ajoutiez également les sauts de ligne qui ont été supprimés lors de la modification précédente.

J’ajouterai également les nouveaux filtres à ma publication. Est-il prévu d’inclure les filtres manquants dans la publication officielle ?

Bonjour @Moin,

Mon objectif était seulement de capturer les deux nouvelles fonctionnalités avant qu’elles ne soient négligées.

Je vais attribuer ce sujet et voir si nous pouvons mettre à jour complètement l’OP lorsque quelqu’un de l’équipe aura le temps de s’en occuper.

2 « J'aime »

Les filtres de localisation ont également été ajoutés au cours du dernier mois : Search for localized title/content in Discourse search - #15 by nat.
Il n’était donc pas évident pourquoi vous avez ajouté ceux-ci et pas les autres filtres.

Seulement parce que j’ai été impliqué et conscient de la sortie de in:replies et in:all-posts, et que je viens d’un milieu où je modifiais la documentation en temps réel. Ce n’était pas une omission intentionnelle de fonctionnalités spécifiques de l’OP.

1 « J'aime »

J’apprécie les mises à jour opportunes, mais je trouve qu’il est presque plus difficile de déterminer ce qui manque car il ne suffit plus de regarder ce qui a changé depuis la dernière modification. J’ai l’impression que 2 des 4 dernières modifications ont maintenant été ajoutées (ordre : read et in:replies/all-posts contre in:bots/human et locale:language).

Y a-t-il quelque chose que vous aimeriez voir concernant la manière de signaler les changements ? J’ai ajouté in:bots il y a quelque temps. J’aurais pu répondre ici, mais mon impression générale est que ces commentaires mènent rarement à des changements. Depuis le passage à « seuls les membres de l’équipe peuvent modifier », j’ai l’impression que le flux de travail pour transformer les aspects découverts par la communauté en améliorations fait défaut.

Ce n’est pas une décision qui m’appartient uniquement, donc je transmettrai vos commentaires à l’équipe et nous verrons où nous en sommes.

Pour l’instant, à moins que nous ne revenions à la wikification de la documentation, je pense que les commentaires sont utiles, car ainsi, lorsqu’un membre de l’équipe sera en mesure de prioriser la mise à jour d’un document, vous aurez contribué à garantir que des éléments spécifiques ne seront pas négligés.

Vous n’obtiendrez peut-être pas la gratification immédiate de voir vos commentaires intégrés tout de suite, mais ils seront sans aucun doute appréciés lors d’une mise à jour.

1 « J'aime »