Filtrare le liste di argomenti in Discourse

:bookmark: Questa guida spiega il sistema avanzato di filtraggio degli argomenti di Discourse, inclusa la sintassi completa del linguaggio di query, le opzioni di filtro e come utilizzare efficacemente il percorso /filter.

:person_raising_hand: Livello utente richiesto: Tutti gli utenti

Utilizzo del linguaggio di query del filtro argomenti di Discourse

Il filtro argomenti di Discourse fornisce un potente linguaggio di query per trovare argomenti basati su criteri multipli. Questa interfaccia di ricerca avanzata ti consente di combinare filtri, ordinare i risultati e creare query precise per qualsiasi contenuto sul tuo forum.

Accesso al filtro

Puoi accedere al filtro argomenti in due modi:

Accesso diretto tramite URL:
Naviga su /filter nella tua istanza Discourse (ad esempio: https://meta.discourse.org/filter)

Navigazione dalla barra laterale:
Fai clic su “Altro” nella barra laterale, quindi seleziona l’opzione del filtro

L’interfaccia del filtro include un sistema di completamento automatico intelligente che suggerisce filtri e valori disponibili mentre digiti.

Sintassi di base delle query

I filtri utilizzano una sintassi strutturata con il formato:

nome-filtro:valore

Combina più filtri:

category:support status:open created-after:2023-01-01

Includi termini di ricerca regolari:

category:support ssl certificate error

Questo cerca argomenti nella categoria “support” contenenti le parole “ssl certificate error”.

Filtri per categoria

category: (alias: categories:)

Filtra argomenti per categoria

Utilizzo di base:

category:support
category:dev,support          # Argomenti nelle categorie dev O support
category:documentation:admins # Argomenti nella sottocategoria admins di documentation

Prefissi avanzati:

  • = - Categoria senza sottocategorie: =category:general
  • - - Escludi categoria: -category:off-topic
  • -= - Escludi categoria senza sottocategorie: -=category:meta

Esempi:

category:bug,feature          # Includi categorie bug o feature (con sottocategorie)
=category:bug,feature         # Includi categorie bug o feature (senza sottocategorie)
-category:bug,feature         # Escludi categorie bug o feature (con sottocategorie)
-=category:bug,feature        # Escludi categorie bug o feature (senza sottocategorie)

Filtri per tag

tag: (alias: tags:)

Filtra argomenti per tag (richiede l’abilitazione dei tag)

Utilizzo di base:

tag:bug
tag:feature,enhancement       # Argomenti con tag feature O enhancement
tag:bug+urgent               # Argomenti con entrambi i tag bug E urgent

Esclusione:

-tag:solved                  # Escludi argomenti con tag solved
-tag:bug+urgent              # Escludi argomenti con entrambi i tag bug e urgent
-tag:bug,urgent              # Escludi argomenti con tag bug o urgent

tag_group:

Filtra per gruppi di tag

Utilizzo di base:

tag_group:moderation
-tag_group:staff-only        # Escludi argomenti con tag dal gruppo staff-only

Filtri per data

Tutti i filtri per data supportano sia date specifiche (AAAA-MM-GG) che giorni relativi:

Date di attività

  • activity-before: - Argomenti con ultima attività prima della data
  • activity-after: - Argomenti con ultima attività dopo la data

Date di creazione

  • created-before: - Argomenti creati prima della data
  • created-after: - Argomenti creati dopo la data

Date dell’ultimo post

  • latest-post-before: - Argomenti con ultimo post prima della data
  • latest-post-after: - Argomenti con ultimo post dopo la data

Esempi di formato data:

created-after:2023-12-25     # Data specifica (AAAA-MM-GG)
created-after:30             # 30 giorni fa
created-after:1              # Ieri
created-after:0              # Oggi

Suggerimenti rapidi:

  • 1 - Ieri
  • 7 - La settimana scorsa
  • 30 - Il mese scorso
  • 365 - L’anno scorso

Filtri utente

created-by:

Filtra per autore dell’argomento

Utilizzo di base:

created-by:username
created-by:user1,user2       # Argomenti di user1 O user2
created-by:@username         # Il prefisso @ è opzionale

Filtri personali (solo utenti autenticati)

in:

Filtra in base alla tua relazione personale con gli argomenti

Opzioni disponibili:

  • in:pinned - Argomenti bloccati per te
  • in:bookmarked - Argomenti che hai aggiunto ai preferiti
  • in:watching - Argomenti che stai seguendo
  • in:tracking - Argomenti che stai tracciando
  • in:muted - Argomenti che hai silenziato
  • in:normal - Argomenti con livello di notifica normale
  • in:watching_first_post - Argomenti in cui segui solo il primo post

Esempi:

in:bookmarked category:support
in:watching,tracking         # Argomenti che stai seguendo O tracciando

Filtri numerici

Filtri per like

  • likes-min: - Numero minimo di like totali in tutti i post
  • likes-max: - Numero massimo di like totali in tutti i post
  • likes-op-min: - Numero minimo di like nel post di apertura
  • likes-op-max: - Numero massimo di like nel post di apertura

Filtri per conteggio post

  • posts-min: - Numero minimo di post
  • posts-max: - Numero massimo di post

Filtri per partecipanti

  • posters-min: - Numero minimo di partecipanti
  • posters-max: - Numero massimo di partecipanti

Filtri per conteggio visualizzazioni

  • views-min: - Numero minimo di visualizzazioni
  • views-max: - Numero massimo di visualizzazioni

Esempi:

likes-min:10                 # Argomenti con almeno 10 like
posts-min:5 posts-max:20     # Argomenti con 5-20 post
views-min:100 likes-op-min:5 # Argomenti popolari con post di apertura coinvolgenti

Filtri di stato

status:

Filtra per stato dell’argomento

Stati disponibili:

  • status:open - Argomenti aperti (non chiusi o archiviati)
  • status:closed - Argomenti chiusi
  • status:archived - Argomenti archiviati
  • status:listed - Argomenti elencati (visibili)
  • status:unlisted - Argomenti non elencati
  • status:deleted - Argomenti eliminati (richiede permessi)
  • status:public - Argomenti pubblici (categorie non limitate)

Stati specifici del plugin:

  • status:solved - Argomenti risolti (con plugin Solved)
  • status:unsolved - Argomenti non risolti (con plugin Solved)

Esempi:

status:open category:support
status:closed created-after:30

Opzioni di ordinamento

order:

Ordina i risultati in base a criteri diversi

Ordinamenti disponibili:

  • order:activity - Ultima attività (predefinito, decrescente)
  • order:activity-asc - Prima attività più vecchia
  • order:created - Data di creazione (più recenti prima)
  • order:created-asc - Più vecchi prima
  • order:latest-post - Data dell’ultimo post
  • order:latest-post-asc - Ultimo post più vecchio
  • order:likes - Maggior numero di like in tutti i post
  • order:likes-asc - Minor numero di like
  • order:likes-op - Maggior numero di like nel post di apertura
  • order:likes-op-asc - Minor numero di like nel post di apertura
  • order:posters - Maggior numero di partecipanti
  • order:posters-asc - Minor numero di partecipanti
  • order:title - Alfabetico per titolo
  • order:title-asc - Alfabetico inverso
  • order:views - Maggior numero di visualizzazioni
  • order:views-asc - Minor numero di visualizzazioni
  • order:category - Nome categoria
  • order:category-asc - Nome categoria inverso
  • order:read - Data ultima lettura (utenti autenticati)
  • order:read-asc - Prima lettura più vecchia

Esempi avanzati

Trova discussioni recenti popolari:

created-after:7 likes-min:10 order:likes

Argomenti di supporto che necessitano di attenzione:

category:support status:open posts-max:3 created-after:7

I tuoi argomenti di sviluppo aggiunti ai preferiti:

category:dev in:bookmarked order:activity

Escludi segnalazioni di bug risolti:

category:bug -tag:solved status:open order:created

Argomenti ad alto coinvolgimento da utenti specifici:

created-by:admin,moderator likes-min:5 views-min:100

Argomenti non elencati recenti (solo staff):

status:unlisted created-after:30 order:created

Funzionalità di completamento automatico

L’input del filtro fornisce suggerimenti intelligenti:

  1. Suggerimenti filtro - Mostra i filtri disponibili mentre digiti
  2. Completamento automatico categoria - Suggerisce categorie per nome o slug
  3. Completamento automatico tag - Suggerisce tag con conteggio post
  4. Completamento automatico nome utente - Suggerisce nomi utente con nomi visualizzati
  5. Suggerimenti data - Offre opzioni rapide per le date (ieri, settimana scorsa, ecc.)
  6. Supporto prefissi - Mostra opzioni di prefisso per categorie e tag

Suggerimenti e best practice

  1. Usa il completamento automatico - L’interfaccia del filtro fornisce suggerimenti intelligenti mentre digiti
  2. Combina i filtri - Mescola diversi tipi di filtri per risultati precisi
  3. Condividi gli URL dei filtri - Gli URL dei filtri sono condivisibili - copia l’URL per condividere la tua ricerca
  4. Aggiungi filtri utili alla tua barra laterale - Gli URL dei filtri possono essere aggiunti alla tua barra laterale per un facile accesso
  5. Usa l’esclusione - Usa il prefisso - per escludere risultati indesiderati
  6. Scorciatoie data - Usa numeri per date relative (30 = 30 giorni fa)
  7. Navigazione da tastiera - Usa i tasti freccia per navigare tra i suggerimenti, Tab/Invio per selezionare

Creazione di collegamenti personalizzati nella barra laterale

Puoi aggiungere collegamenti di filtro alla tua barra laterale come collegamenti personalizzati:

  1. Vai alle impostazioni della tua barra laterale
  2. Aggiungi un collegamento personalizzato con un URL di filtro come /filter?q=category:support status:open
  3. Dagli un nome descrittivo come “Argomenti di supporto aperti”

Note tecniche

  • Il filtro utilizza la ricerca full-text per parole chiave combinate con i filtri
  • Viene applicata la lunghezza minima del termine di ricerca per le ricerche per parole chiave
  • I risultati sono consapevoli dei permessi - vedi solo gli argomenti a cui puoi accedere
  • Le query del filtro vengono elaborate lato server per prestazioni ottimali
  • La funzionalità supporta estensioni di plugin per filtri personalizzati

Risorse aggiuntive

11 Mi Piace

3 post sono stati spostati in un nuovo argomento: Build onebox support for topic filters

È possibile? So che puoi guardare solo i primi post in una categoria, ma come funziona su un argomento?

3 Mi Piace

Probabilmente necessita di chiarimenti, penso che troverà tutti gli argomenti nelle categorie che segui prima, aggiornerà

2 Mi Piace

C’è un modo per combinarlo anche con i filtri classici non letto/nuovo?

2 Mi Piace

Penso che ci sia un URL “hacky”, ma posso aggiungere il supporto per status:unread-posts e topics domani, non è troppo difficile

3 Mi Piace

Penso che preferirei in: perché è un filtro personale come segnalibri o tracciamento. Le voci di stato si riferiscono allo stato dell’argomento.

Mi aspetterei che watching restituisca tutti gli argomenti che sto seguendo, non tutti gli argomenti delle categorie che sto seguendo. È un’ipotesi errata? Trovo confuso se “watching first post” si riferisce alla categoria mentre gli altri stati si riferiscono agli argomenti.

2 Mi Piace

Potremmo aver bisogno di un altro operatore per questa semantica di osservazione

Accordo su “in”, potrei dover modificare gli interni un po’ per supportare clausole “in” multiple

Mi piacerebbe un modo per filtrarlo per argomenti che non ho ancora visualizzato e per quelli a cui non ho ancora risposto!

È possibile?

Ad esempio, un filtro per “Post nella categoria Introduzioni a cui non ho ancora risposto”.

2 Mi Piace

post:

in:unseen category:welcome -user:shauny

O anche se non ti interessano gli elementi non visti, potresti usare:

category:welcome -user:shauny

C’è supporto per cose come in:first come nella ricerca? Grazie.

Come lo vedresti funzionare?

Ad esempio, mostrando tutti gli argomenti con una determinata parola chiave per nasconderli (invece di usare la ricerca).

Questo funziona già:

https://meta.discourse.org/filter?q=glitchy%20category%3Abug

E anche:

https://meta.discourse.org/filter?q=glitchy%20category%3Abug%20f

Ma immagino che se ci fosse qualche altra parola chiave come in:first nascosta che non viene gestita dal filtro, potremmo reindirizzarla alla ricerca…

1 Mi Piace

Ah, capisco: f cerca quello nel primo post. Non l’ho trovato nella documentazione, ho dovuto cercare qui. Grazie!

1 Mi Piace

Un filtro che mi manca è “nessun timer di argomento impostato per chiudere” o “nessun timer di argomento impostato per chiudere dopo l’ultima risposta”. Esiste e non riesco a trovarlo?

Sto usando un filtro collegato dalla mia barra laterale per smistare gli argomenti di supporto qui su meta man mano che invecchiano senza essere risolti.

Ecco il filtro come appare ora:

category:support status:open status:unsolved activity-before:7 assigned:nobody

Funziona abbastanza bene, ma come vedrai ci sono alcuni argomenti elencati per i quali ho impostato dei timer che vorrei non vedere più nell’elenco.