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.

13 « J'aime »