Hallo zusammen,
ich arbeite mit Themen, die manchmal viele Tags haben (viele davon werden maschinell aus einem ICS-Feed generiert). In der Discourse-Benutzeroberfläche werden Tags einfach weiter umgebrochen, was Themenlisten sehr hoch und schwerer zu überfliegen macht.
Ich würde gerne etwas Ähnliches tun, wie Kategorien in Themenlisten angezeigt werden:
• Die ersten paar (sagen wir 5) anzeigen
• Dann den Rest hinter einem „+X mehr“-Indikator einklappen
Was ich versucht habe:
• CSS kann Tags nach einer bestimmten Anzahl ausblenden und sogar ein statisches „…“-Zeichen hinzufügen, z. B.
/* Alle Tags nach dem 5. ausblenden */
.topic-list .discourse-tags a:nth-of-type(n+6) {
display: none;
}
/* … nach dem 5. hinzufügen */
.topic-list .discourse-tags a:nth-of-type(5)::after {
content: " …";
}
Das funktioniert zum Ausblenden, aber CSS kann nicht dynamisch zählen, wie viele ausgeblendet wurden, daher kann ich kein „+3 mehr“ erhalten.
Meine Frage:
• Gibt es eine eingebaute Möglichkeit, die Anzahl der Tags pro Themenanzeige zu begrenzen?
• Wenn nicht, gibt es einen Beispiel-Snippet (vielleicht von der Kategorie-Darstellung), das ich in eine Theme-Komponente anpassen könnte, um die „+X mehr“-Logik für Tags hinzuzufügen?
Vielen Dank im Voraus!
