Filtern von Themenlisten in Discourse

:bookmark: Dieser Leitfaden erklärt das erweiterte Themafiltersystem von Discourse, einschließlich der vollständigen Syntax der Abfragesprache, Filteroptionen und wie die Route /filter effektiv genutzt wird.

:person_raising_hand: Erforderliches Benutzerniveau: Alle Benutzer

Verwenden der Discourse-Themenfilter-Abfragesprache

Der Discourse-Themenfilter bietet eine leistungsstarke Abfragesprache zum Finden von Themen basierend auf mehreren Kriterien. Diese erweiterte Suchoberfläche ermöglicht es Ihnen, Filter zu kombinieren, Ergebnisse zu sortieren und präzise Abfragen für beliebige Inhalte in Ihrem Forum zu erstellen.

Zugriff auf den Filter

Sie können auf den Themenfilter auf zwei Arten zugreifen:

Direkter URL-Zugriff:
Navigieren Sie zu /filter auf Ihrer Discourse-Instanz (z. B.: https://meta.discourse.org/filter)

Seitenleistennavigation:
Klicken Sie in Ihrer Seitenleiste auf „Mehr“ und wählen Sie dann die Filteroption aus

Die Filteroberfläche enthält ein intelligentes Autovervollständigungssystem, das verfügbare Filter und Werte vorschlägt, während Sie tippen.

Grundlegende Abfragesyntax

Filter verwenden eine strukturierte Syntax mit dem Format:

filter-name:wert

Kombinieren mehrerer Filter:

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

Einschließen regulärer Suchbegriffe:

category:support ssl certificate error

Dies sucht nach Themen in der Kategorie „Support“, die die Wörter „SSL-Zertifikatsfehler“ enthalten.

Kategorie-Filter

category: (Alias: categories:)

Themen nach Kategorie filtern

Grundlegende Verwendung:

category:support
category:dev,support          # Themen in den Kategorien dev ODER support
category:documentation:admins # Themen in der Unterkategorie admins von documentation

Erweiterte Präfixe:

  • = - Kategorie ohne Unterkategorien: =category:general
  • - - Kategorie ausschließen: -category:off-topic
  • -= - Kategorie ohne Unterkategorien ausschließen: -=category:meta

Beispiele:

category:bug,feature          # Kategorien bug oder feature einschließen (mit Unterkategorien)
=category:bug,feature         # Kategorien bug oder feature einschließen (ohne Unterkategorien)
-category:bug,feature         # Kategorien bug oder feature ausschließen (mit Unterkategorien)
-=category:bug,feature        # Kategorien bug oder feature ausschließen (ohne Unterkategorien)

Tag-Filter

tag: (Alias: tags:)

Themen nach Tags filtern (erfordert, dass das Tagging aktiviert ist)

Grundlegende Verwendung:

tag:bug
tag:feature,enhancement       # Themen mit den Tags feature ODER enhancement
tag:bug+urgent               # Themen mit den Tags bug UND urgent

Ausschluss:

-tag:solved                  # Themen mit dem Tag solved ausschließen
-tag:bug+urgent              # Themen mit den Tags bug und urgent ausschließen
-tag:bug,urgent              # Themen mit den Tags bug oder urgent ausschließen

tag_group:

Nach Tag-Gruppen filtern

Grundlegende Verwendung:

tag_group:moderation
-tag_group:staff-only        # Themen mit Tags aus der Gruppe staff-only ausschließen

Datumsfilter

Alle Datumsfilter unterstützen sowohl spezifische Daten (JJJJ-MM-TT) als auch relative Tage:

Aktivitätsdaten

  • activity-before: - Themen mit letzter Aktivität vor Datum
  • activity-after: - Themen mit letzter Aktivität nach Datum

Erstellungsdaten

  • created-before: - Themen erstellt vor Datum
  • created-after: - Themen erstellt nach Datum

Neueste Post-Daten

  • latest-post-before: - Themen mit letztem Post vor Datum
  • latest-post-after: - Themen mit letztem Post nach Datum

Beispiele für Datumsformate:

created-after:2023-12-25     # Spezifisches Datum (JJJJ-MM-TT)
created-after:30             # Vor 30 Tagen
created-after:1              # Gestern
created-after:0              # Heute

Schnelle Vorschläge:

  • 1 - Gestern
  • 7 - Letzte Woche
  • 30 - Letzter Monat
  • 365 - Letztes Jahr

Benutzerfilter

created-by:

Nach Thema-Autor filtern

Grundlegende Verwendung:

created-by:username
created-by:user1,user2       # Themen von user1 ODER user2
created-by:@username         # @-Präfix ist optional

Persönliche Filter (nur für authentifizierte Benutzer)

in:

Nach Ihrer persönlichen Beziehung zu Themen filtern

Verfügbare Optionen:

  • in:pinned - Für Sie angeheftete Themen
  • in:bookmarked - Von Ihnen gespeicherte Themen
  • in:watching - Themen, die Sie beobachten
  • in:tracking - Themen, die Sie verfolgen
  • in:muted - Von Ihnen stummgeschaltete Themen
  • in:normal - Themen mit normaler Benachrichtigungsstufe
  • in:watching_first_post - Themen, bei denen Sie nur den ersten Beitrag beobachten

Beispiele:

in:bookmarked category:support
in:watching,tracking         # Themen, die Sie beobachten ODER verfolgen

Numerische Filter

Like-Filter

  • likes-min: - Minimale Gesamtzahl von Likes über alle Beiträge hinweg
  • likes-max: - Maximale Gesamtzahl von Likes über alle Beiträge hinweg
  • likes-op-min: - Minimale Likes im Eröffnungsbeitrag
  • likes-op-max: - Maximale Likes im Eröffnungsbeitrag

Beitragsanzahl-Filter

  • posts-min: - Minimale Anzahl von Beiträgen
  • posts-max: - Maximale Anzahl von Beiträgen

Teilnehmer-Filter

  • posters-min: - Minimale Anzahl von Teilnehmern
  • posters-max: - Maximale Anzahl von Teilnehmern

Aufrufe-Filter

  • views-min: - Minimale Anzahl von Aufrufen
  • views-max: - Maximale Anzahl von Aufrufen

Beispiele:

likes-min:10                 # Themen mit mindestens 10 Likes
posts-min:5 posts-max:20     # Themen mit 5-20 Beiträgen
views-min:100 likes-op-min:5 # Beliebte Themen mit engagierten Eröffnungsbeiträgen

Statusfilter

status:

Nach dem Thema-Status filtern

Verfügbare Status:

  • status:open - Offene Themen (nicht geschlossen oder archiviert)
  • status:closed - Geschlossene Themen
  • status:archived - Archivierte Themen
  • status:listed - Aufgelistete (sichtbare) Themen
  • status:unlisted - Nicht aufgelistete Themen
  • status:deleted - Gelöschte Themen (erfordert Berechtigung)
  • status:public - Öffentliche Themen (nicht eingeschränkte Kategorien)

Plugin-spezifische Status:

  • status:solved - Gelöste Themen (mit Solved-Plugin)
  • status:unsolved - Ungelöste Themen (mit Solved-Plugin)

Beispiele:

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

Sortieroptionen

order:

Ergebnisse nach verschiedenen Kriterien sortieren

Verfügbare Sortierungen:

  • order:activity - Neueste Aktivität (Standard, absteigend)
  • order:activity-asc - Älteste Aktivität zuerst
  • order:created - Erstellungsdatum (neueste zuerst)
  • order:created-asc - Älteste zuerst
  • order:latest-post - Neuestes Post-Datum
  • order:latest-post-asc - Ältestes letztes Post
  • order:likes - Meiste Likes über alle Beiträge hinweg
  • order:likes-asc - Wenigste Likes
  • order:likes-op - Meiste Likes im Eröffnungsbeitrag
  • order:likes-op-asc - Wenigste Likes im Eröffnungsbeitrag
  • order:posters - Meiste Teilnehmer
  • order:posters-asc - Wenigste Teilnehmer
  • order:title - Alphabetisch nach Titel
  • order:title-asc - Umgekehrt alphabetisch
  • order:views - Meiste Aufrufe
  • order:views-asc - Wenigste Aufrufe
  • order:category - Kategoriename
  • order:category-asc - Umgekehrter Kategoriename
  • order:read - Datum des letzten Lesens (authentifizierte Benutzer)
  • order:read-asc - Ältestes Lesen zuerst

Erweiterte Beispiele

Beliebte aktuelle Diskussionen finden:

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

Support-Themen, die Aufmerksamkeit erfordern:

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

Ihre gespeicherten Entwicklungsthemen:

category:dev in:bookmarked order:activity

Gelöste Bug-Reports ausschließen:

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

Themen mit hohem Engagement von bestimmten Benutzern:

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

Aktuelle nicht aufgelistete Themen (nur für Mitarbeiter):

status:unlisted created-after:30 order:created

Autovervollständigungsfunktionen

Die Filter-Eingabe bietet intelligente Vorschläge:

  1. Filtervorschläge - Zeigt verfügbare Filter an, während Sie tippen
  2. Kategorie-Autovervollständigung - Schlägt Kategorien nach Namen oder Slug vor
  3. Tag-Autovervollständigung - Schlägt Tags mit Beitragsanzahlen vor
  4. Benutzername-Autovervollständigung - Schlägt Benutzernamen mit Anzeigenamen vor
  5. Datums-Vorschläge - Bietet schnelle Datumsoptionen (gestern, letzte Woche usw.)
  6. Präfix-Unterstützung - Zeigt Präfix-Optionen für Kategorien und Tags an

Tipps und Best Practices

  1. Verwenden Sie Autovervollständigung - Die Filteroberfläche bietet intelligente Vorschläge, während Sie tippen
  2. Kombinieren Sie Filter - Mischen Sie verschiedene Filtertypen für präzise Ergebnisse
  3. Teilen Sie Filter-URLs - Filter-URLs sind teilbar - kopieren Sie die URL, um Ihre Suche zu teilen
  4. Fügen Sie nützliche Filter zu Ihrer Seitenleiste hinzu - Filter-URLs können für einfachen Zugriff zu Ihrer Seitenleiste hinzugefügt werden
  5. Verwenden Sie Ausschluss - Verwenden Sie das Präfix -, um unerwünschte Ergebnisse auszuschließen
  6. Datums-Kurzbefehle - Verwenden Sie Zahlen für relative Daten (30 = vor 30 Tagen)
  7. Tastaturnavigation - Verwenden Sie die Pfeiltasten, um Vorschläge zu navigieren, Tab/Enter zum Auswählen

Erstellen benutzerdefinierter Seitenleisten-Links

Sie können Filter-Links als benutzerdefinierte Links zu Ihrer Seitenleiste hinzufügen:

  1. Gehen Sie zu Ihren Seitenleisten-Einstellungen
  2. Fügen Sie einen benutzerdefinierten Link mit einer Filter-URL wie /filter?q=category:support status:open hinzu
  3. Geben Sie ihm einen beschreibenden Namen wie „Offene Support-Themen“

Technische Hinweise

  • Der Filter verwendet Volltextsuche für Schlüsselwörter in Kombination mit Filtern
  • Die Mindestlänge für Suchbegriffe gilt für Stichwortsuchen
  • Ergebnisse sind berechtigungsbezogen - Sie sehen nur Themen, auf die Sie zugreifen können
  • Filterabfragen werden zur Leistung auf der Serverseite verarbeitet
  • Die Funktion unterstützt Plugin-Erweiterungen für benutzerdefinierte Filter

Zusätzliche Ressourcen

11 „Gefällt mir“

3 Beiträge wurden in ein neues Thema aufgeteilt: Build onebox support for topic filters

Ist das möglich? Ich weiß, dass man nur den ersten Beitrag in einer Kategorie beobachten kann, aber wie funktioniert das bei einem Thema?

3 „Gefällt mir“

Benötigt wahrscheinlich eine Klärung, ich denke, es wird zuerst alle Themen in den von Ihnen beobachteten Kategorien finden, wird aktualisiert

2 „Gefällt mir“

Gibt es eine Möglichkeit, dies auch mit den klassischen Filtern “Ungelesen/Neu” zu kombinieren?

2 „Gefällt mir“

Ich glaube, es gibt eine umständliche URL, aber ich kann morgen Unterstützung für status:unread-posts und topics hinzufügen, nicht allzu schwer

3 „Gefällt mir“

Ich würde in: bevorzugen, da es ein persönlicher Filter ist, ähnlich wie Lesezeichen oder Verfolgung. Die Status beziehen sich auf den Themenstatus.

Ich würde erwarten, dass watching alle Themen zurückgibt, die ich beobachte, nicht alle Themen aus Kategorien, die ich beobachte. Ist das eine falsche Annahme? Ich finde es verwirrend, wenn sich „watching first post“ auf die Kategorie bezieht, während sich die anderen Status auf Themen beziehen.

2 „Gefällt mir“

Wir benötigen möglicherweise einen weiteren Operator für diese Watching-Semantik

Einverstanden, ich muss die Interna möglicherweise etwas ändern, um mehrere Klauseln zu unterstützen.

Ich hätte gerne eine Möglichkeit, es nach Themen zu filtern, die ich noch nicht angesehen habe, und nach solchen, auf die ich noch nicht geantwortet habe!

Ist das möglich?

Zum Beispiel ein Filter für „Beiträge in der Kategorie „Einführungen“, auf die ich noch nicht geantwortet habe“.

2 „Gefällt mir“

post:

in:unseen category:welcome -user:shauny

Oder auch, wenn Sie sich nicht um ungesehene Beiträge kümmern, könnten Sie verwenden:

category:welcome -user:shauny

Gibt es Unterstützung für Dinge wie in:first wie bei der Suche? Danke.

Wie würden Sie es sich vorstellen?

Zum Beispiel, alle Themen mit einem bestimmten Schlüsselwort anzuzeigen, um sie auszublenden (anstatt die Suche zu verwenden).

Das funktioniert bereits:

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

Und das auch:

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

Aber ich schätze, wenn es ein anderes Schlüsselwort wie in:first gibt, das nicht von filter behandelt wird, können wir es an die Suche weiterleiten…

1 „Gefällt mir“

Ah, ich verstehe – f sucht danach im ersten Beitrag. Ich konnte es im Handbuch nicht finden und musste hier nachsehen. Danke!

1 „Gefällt mir“

Ein Filter, den ich vermisse, ist „kein Thema-Timer zum Schließen gesetzt“ oder „kein Thema-Timer zum Schließen nach letzter Antwort gesetzt“. Gibt es das und ich finde es nur nicht?

Ich verwende einen Filter, der von meiner Seitenleiste verknüpft ist, um Support-Themen hier auf Meta zu sortieren, da sie älter werden, ohne gelöst zu werden.

Hier ist der Filter, wie er jetzt aussieht:

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

Er funktioniert ziemlich gut, aber wie Sie sehen werden, gibt es einige aufgelistete Themen, für die ich Thema-Timer gesetzt habe, die ich nicht mehr in der Liste sehen möchte.