Discourse Docs Kartenfilter

:discourse2: Summary Discourse Docs Card Filter is to be used with the Discourse Docs Plugin and allows you to place “Cards” that act as a clickable filter for quicker filter results upon entering the /docs page by your users.
:eyeglasses: Preview Preview on Discourse Theme Creator
:hammer_and_wrench: Repository Link https://github.com/discourse/discourse-docs-card-filter
:open_book: New to Discourse Themes? Beginner’s guide to using Discourse Themes

Install this theme component

Features

The above would be rendered with these settings in the docs plugin:

Settings

You can select custom icons for each category or tag card filter. You can also allow category descriptions to be rendered in the category card filters.

Name Description
category icons Choose icons & topics order for corresponding category IDs. ex. ‘6,heart,title-asc’ would assign the heart icon to category 6 & will order topic list by ascending activity. NOTE: order can be (title,activity)-(asc/desc)
category description Enable the category description to be displayed in the category card filters for the docs page.
tag icons Choose icons & topics order for corresponding tag slugs. ex. ‘featured,heart,activity-desc’ would assign the heart icon to featured tag & will order topic list by ascending activity. NOTE: order can be (title,activity)-(asc/desc)
Translation Default
topics Topics
topic Topic

:discourse2: Hosted by us? Theme components are available to use on our Standard, Business, and Enterprise plans.

Last edited by @JammyDodger 2024-06-12T08:47:57Z

Check documentPerform check on document:
33 „Gefällt mir“

Thanks for building this! Is it the case that if a user doesn’t have view permissions on a (private) category, the card for that private category won’t appear above the search box? (Or I suppose on the sidebar, but just want to confirm the behavior is consistent.)

1 „Gefällt mir“

This should be the case as we are getting the category info from

@discourseComputed("category")
  categoryInfo(category) {
    return this.site.categories.findBy("id", category.id);
  },

To my knowledge, this.site.categories will only return those the current user can view.

2 „Gefällt mir“

Excellent. That will make it a real easy-to-use tool for people in our multiple workgroups who want quick access to their group(s) reference materials, and quickly filter our Group A from Group B, etc. Thanks!

3 „Gefällt mir“

Is it possible that the counter on /docs does not count topics moved into that category after it is already created?

I just made a new category, added in docs, moved a few topics but the counter still says “0 topic”.

EDIT: seems it just takes a while to update.

Gibt es eine Möglichkeit, die Sortierreihenfolge für die Karten zu ändern, auch wenn dies eine Codeänderung erfordert? Ich hätte sie gerne alphabetisch und nicht nach Thema-Anzahl. Danke!

1 „Gefällt mir“

Hallo zusammen. Docs und diese Erweiterung von Docs sind fantastisch. Nur eine Sache. Kann mir jemand dabei helfen, diese Karten irgendwie zum top_menu oder zu den homepage-Bereichen hinzuzufügen? Es wäre großartig, eine Standard-Homepage mit “Neueste” als Standard zu haben, aber diese Karten oben zu haben. Dann würde das Klicken auf eine Karte zur gefilterten Docs-Seite führen.

Außerdem habe ich ein weiteres Plugin (Suchfeld), das sich im top_menu-Bereich befindet. Ich konnte nicht herausfinden, wie ich die Reihenfolge ändern kann, wenn mehrere Plugins in diesem Bereich angezeigt werden.

Danke.

3 „Gefällt mir“

Hallo @jordan.vidrine

Wir haben den TC ausprobiert und er funktioniert hervorragend für Ihren Anwendungsfall. Jetzt können wir eine Wissensdatenbank erstellen.

In diesem Zusammenhang habe ich eine Frage: Können Sie Workarounds vorschlagen, um jeder Kategorie- oder Tag-Karte einige Parameter hinzuzufügen? Auf diese Weise möchten wir &order=title anhängen, um die Sortierung für jede einzelne Kategorie- oder Tag-Karte zu beeinflussen.

PS:

Hmmm.. Ich bin mir nicht sicher.

Wie möchten Sie, dass die Kategorie- und Tag-Karten sortiert werden?

Hallo Jordan

Wir könnten einen Sortierparameter in den Theme-Einstellungen für category icons hinzufügen. Zum Beispiel könnten wir bei 6,heart einen zusätzlichen Sortierbefehl hinzufügen, z. B. um nach dem Thema aufsteigend zu sortieren, wäre es 6,heart,title-asc.

Beim Öffnen der Kategoriekarte würden dann einfach die Dokumentationsparameter angehängt, wie z. B.: /docs?ascending=true&category=71&order=title

Was hältst du davon?

1 „Gefällt mir“

Obwohl es möglich ist, dass dies auf einer Website gut funktionieren könnte, gibt es ohne viel Feedback zu diesem Thema, das sich auf die Fähigkeit konzentriert, die Karten zu sortieren, nicht unbedingt das Gefühl, dass die Zeit, die für die ordnungsgemäße Funktion aufgewendet wird, derzeit gerechtfertigt ist.

Das heißt, wir ermutigen PRs zu Komponenten sowie das Forken einer Komponente, um sie auf Ihre eigene Weise zu verwenden!

Sie können gerne einen PR mit dieser Funktionalität erstellen oder ihn für sich selbst forken.

3 „Gefällt mir“

Ich kann eine PR für diese Anfrage erstellen, da @jrgong die Arbeit sponsert.

4 „Gefällt mir“

Ich pushe das hier mal hoch! Konnte das schon jemand herausfinden?

2 „Gefällt mir“

Meine Lösung war, die Karten auszuschalten (da ich zu viele Kategorien habe, als dass sie nützlich wären) und die Sortierreihenfolge von Docs zu ändern. Mehr dazu erfahren Sie hier Modifying Discourse Docs to only allow for sorting by Title - #2 by Nick_Chomey

2 „Gefällt mir“

Wir begrüßen definitiv nützliche PRs für unsere Komponenten!

Wenn Sie die Möglichkeit hinzufügen würden, diese Karten zu sortieren, würde ich vorschlagen, eine neue Werteliste zu erstellen, in der Sie die Reihenfolge der Karten nach Kategorie-ID und Tag-ID angeben können. Ich würde sie nicht zu einer bereits vorhandenen Werteliste für etwas Unverwandtes hinzufügen.

:smile:

1 „Gefällt mir“

@jordan.vidrine Vielen Dank für das Design der großartigen Komponente. Gibt es eine Möglichkeit, die Komponente auf Mobilgeräten zu deaktivieren, sie aber auf dem PC/Mac anzuzeigen?

Ist in Ordnung. Aber könnten Sie zumindest die Einstellung für Kategorie-Icons auf eine Werteliste umstellen? Es ist viel einfacher, die Karten in mehreren Textfeldern zu verwalten als in einem einzigen. :wink:

Und als vorübergehende Lösung wäre es sehr hilfreich, wenn jede Dokumentationskarte eine CSS-Klasse mit der jeweiligen Kategorie oder dem jeweiligen Tag-Slug hätte.

Vorher: <a>
Nachher: <a class="docs-card-box [category-slug] category-card">

1 „Gefällt mir“

Das ist ein guter Vorschlag :+1:

2 „Gefällt mir“

Lass mich wissen, wenn du Hilfe beim Testen brauchst, ich bin gerne dein Versuchskaninchen :slight_smile:

1 „Gefällt mir“

Nachdem ich weiter darüber nachgedacht habe, habe ich mich dagegen entschieden, die Einstellung für Kategoriensymbole auf eine Werteliste zu ändern, da dies ohne eine Fallback-Option dazu führen würde, dass die Komponenten der aktuellen Benutzer kaputtgehen.

Das Hinzufügen eines Fallbacks würde so aussehen, dass geprüft wird, ob der Benutzer die Symbole entweder im aktuellen Feld oder im neuen Wertelisten-Feld festgelegt hat, und ich denke, das ist zu umständlich, um es dieser Komponente hinzuzufügen, da dies eine weitere Einstellungsebene hinzufügen und zu möglicher Verwirrung führen würde.

Was die Klassenzusätze betrifft, ist das eine großartige Idee, aber ich habe keinen Zeitplan dafür, wann dies hinzugefügt wird, da es wichtigere Dinge gibt, die meine Aufmerksamkeit erfordern.

Das heißt, wenn möglich, freuen wir uns auch über PRs für unsere Komponenten, wir sind schließlich Open Source!

1 „Gefällt mir“