Das ist definitiv ein Fehler. Wir müssen das untersuchen, gut bemerkt!
Ausgezeichnet, danke für den PR, zusammengeführt!
![]()
Gibt es eine Möglichkeit, auf der Kategorieseite auch ein Vorschaubild mit den neuesten Themen anzuzeigen?
Drei Herausforderungen:
- Ich bin ziemlich sicher, dass Thumbnails hier nicht serialisiert werden. Bestätigen Sie dies gerne. Dies könnte durch die Verbesserung des Sidecar-Plugins überwunden werden.
- Als ich mir das das letzte Mal angesehen habe, erlaubte die Struktur der Seite keine Low-Risk-Overrides, die auf eine Leaf-Vorlage beschränkt waren. Im Allgemeinen möchten wir nicht die gesamte Seite überschreiben, was zu Breaking Changes führen oder Feature-Updates aus dem Kern verbergen könnte. Ein PR für den Kern könnte hier helfen…
- Platz?
Reichen Sie gerne die erforderlichen PRs ein.
Faire Punkte. Ich werde vielleicht eine andere Darstellung für die Kategorieseiten wählen, vielleicht Kacheln oder so etwas Ähnliches.
Ich habe noch eine Frage.
Ist es möglich, dass Kategorieseiten (die Themenlisten enthalten) auf Mobilgeräten in Kacheln angezeigt werden, aber auf Desktops mit Miniaturansichten? Ich habe mehrere Einstellungen ausprobiert, konnte dies aber nicht erreichen.
Bearbeitung: Ich habe es geschafft. Ich werde später im Detail beschreiben, wie ich es gemacht habe, falls es jemanden interessiert. Ich habe diese Bearbeitung hinzugefügt, damit niemand Zeit damit verbringt, mir zu erklären, wie es geht ![]()
Wenn ich mich nicht irre, sind hier die Einstellungen…
Zuerst benötigen wir die Kacheldarstellung nur in der mobilen Ansicht von (zumindest?) einer Themenliste:
Dann die Miniaturansichten für Desktop UND Mobilgeräte:
Ich habe mich anfangs geirrt, weil ich dachte, “Kacheln” und “Miniaturansichten” seien zwei verschiedene Darstellungen einer Themenliste, die beide Bilder enthalten. Aber das ist nicht der Fall. Miniaturansichten sind erforderlich, wenn Bilder in einer Themenliste erscheinen sollen, egal ob es sich um Kacheln handelt oder nicht.
Sie müssen Ihre Kategorien hier nicht manuell hinzufügen:

Da wir diese Einstellung überschreiben werden, indem wir die folgende aktivieren:

Nun sollten Sie auf dem Desktop in jeder Themenliste (neueste, eine bestimmte Kategorie usw.) kleine Miniaturansichten und auf Mobilgeräten eine “gekachelte” Darstellung mit großen Miniaturansichten haben:
Ich habe ein kleines Problem mit meinem Benutzerprofil, ich schätze, das ist ein kleiner Fehler:
Da es sich um das Miniaturbild handelt, gehe ich davon aus, dass dies mit dieser Theme-Komponente zusammenhängt.
Spiele übrigens immer noch mit dieser Theme-Komponente herum… Und sie ist großartig.
Ich habe eine Frage. Ist es möglich, zu verhindern, dass ein Thema ein Miniaturbild hat, obwohl das Thema tatsächlich welche enthält?
Hier ist mein Fall:
Ich habe eine Dokumentations-Kategorie, für die Miniaturbilder willkommen sind.
Aber ich habe auch ein Thema, das allgemeine Ratschläge zur Erstellung eines neuen Themas gibt:
Es gibt kein aussagekräftiges Bild darin, aber es fügt automatisch ein Miniaturbild hinzu:
Die einzige Möglichkeit, die ich sehe, um das Problem zu umgehen, ist das Hinzufügen eines zufälligen Bildes an einer Stelle im Thema und das Festlegen als Miniaturbild.
Beispiel:
(aber ich gebe zu, es sieht trotzdem gut aus…)
Ja, diese Lokalisierung schlägt fehl und muss behoben werden. ![]()
Nein, wenn ein Bild vorhanden ist, wird versucht, dieses zu verwenden. Das Hinzufügen eines zusätzlichen schönen Bildes ist die perfekte Problemumgehung ![]()
Dies wird auch für die Konsistenz Ihres Seitenlayouts besser aussehen.
Auf jeden Fall verwende ich oft eine Komponente für hervorgehobene Themen (die integrierte TLP-Komponente oder eine andere), um diese Art von Beiträgen oben zusammenzufassen, sodass ein Bild sehr schön ist.
Ich versuche, die Miniaturansicht und die Kacheln auf ein bestimmtes Tag zusätzlich zu bestimmten Kategorien zu beschränken, aber es funktioniert nicht für Tags. Hier ist meine Einstellungsseite, ich möchte nur Kacheln und Miniaturansichten für das Featured-Tag. Können Sie mir bitte sagen, ob ich etwas falsch mache.
Es gibt auch einen fehlenden String in den Plugin-Einstellungen:

Und ein weiterer Fehler bei der Option Topic list excerpt removes links.
Wenn ich sie deaktiviere, gibt es überhaupt keinen Link mehr, nicht einmal deren Text, sowie den “Weiterlesen”-Button:
Wenn ich sie aktiviere, erscheinen Links in Auszügen, sowie der “Weiterlesen”-Link, aber aus irgendeinem Grund:
-
Der “Weiterlesen”-Link ist nicht als Link formatiert (bereits gemeldet, aber da alles mit derselben Option zusammenhängt, ziehe ich es vor, alle Probleme auf einmal zusammenzufassen)
-
Einige Auszüge sind falsch umbrochen. Einige Beispiele:
Nur der erste Teil des Satzes aus dem Auszug ist hier umbrochen:
Eine leere Zeile wird als Auszug umbrochen:
Ich helfe gerne weiter, aber leider weiß ich nichts über Plugins und den größten Teil des Discourse-Codes… ![]()
Das sieht nach einem Fehler aus, ich werde es mir bald ansehen.
Ich habe dies im beta-Branch behoben. Könnten Sie bitte bestätigen, dass alles in Ordnung zu sein scheint, dann werde ich es zusammenführen.
Damit dies funktioniert, müssen Sie tag und tag-mobile entfernen und das spezifische Tag zur Einstellung der Tag-Liste hinzufügen.
(Installieren Sie die Beta-Version als eine andere Komponente und ordnen Sie sie einem Testthema zu).
Es stellte sich heraus, dass es eine Breaking Change im Kern gab.
Verwenden Sie die Schaltfläche “Erweitert”, um den Branch anzuzeigen, und geben Sie beta ein:
Wenn ich eine Weile nichts von Ihnen höre, werde ich es trotzdem zusammenführen, aber hier ist Ihre Chance, es zu testen und voranzubringen.
Das erreicht man nur, indem man
macht, ein bisschen nach dem anderen und dabei Wissensschnipsel aufsammelt
![]()
Es gibt auch einen JS-Fehler, wenn wir auf der Website navigieren, wenn die Theme-Komponente installiert ist.
Sie ist auch auf Ihrer eigenen Website sichtbar: https://starzen.space/
Klicken Sie auf einen beliebigen Beitrag und schauen Sie in die JS-Konsole.
TypeError: Cannot read properties of null (reading 'querySelector')
Der Fehler wird in dieser Discourse-Datei ausgelöst:
Sieht nach einer Breaking Change im Core aus: FIX: Don't listen for focus/blur events if the topic-list opts out of… · discourse/discourse@97e7bb1 · GitHub
Hauptsächlich behoben mit: COMPATIBILITY: add css class to tiles to support focus · merefield/discourse-tc-topic-list-previews@4f0f0f0 · GitHub
Fix auf dem beta-Branch, wie auf meiner Seite demonstriert.
Vorteil der Behebung auf diese Weise ist, dass wir jetzt den zuletzt besuchten Indikator auf der Kachel erhalten ![]()
(Die meisten Fehler verschwinden auch auf Mobilgeräten, aber dieser Indikator ist ohnehin normalerweise nicht auf Mobilgeräten sichtbar, daher nenne ich das behoben!)
Ich muss den selteneren Fehler im Zusammenhang mit dem Titel-Element weiterverfolgen.
Dies ist in beta behoben: FIX: fehlende Lokalisierung bei Benutzereinstellungen und Aktualisierung der Locale-Pfade
Danke!
Bezüglich der Option topic list excerpt remove links im Plugin, darf ich vorschlagen, den von Ihnen aktuell verwendeten Regex zu ändern?
URI::regexp entfernt jede Zeichenkette, die ein Linkmuster aufweist, was meiner Meinung nach nicht immer wünschenswert ist.
Links haben manchmal denselben Textinhalt wie ihr href-Wert. Das ist sogar ein sehr häufiger Fall in jedem Forum, und das Entfernen des Textinhalts kann zu bizarren Auszügen mit Sätzen führen, die keinen Sinn ergeben.
Dieser Regex entfernt auch manchmal Wörter, die sich innerhalb oder außerhalb von Links befinden. Ich gebe unten Beispiele an.
Hier ist ein Vergleich mit einem anderen Regex: \u003ca .+?\\\u003e(.+)?\u003c\\/a\u003e
Dies ist nur ein Beispiel-Regex; ich verstehe, dass URI::regexp Links auf eine komplexere (und angeblich zuverlässigere) Weise abdeckt.
Hier ist ein Beispiel-Post:
Und die daraus resultierenden Auszüge in der Themenliste:
URI::regexp
\u003cbig\u003e↓\u003c/big\u003e
(Der Facebook-Link-Textinhalt wurde entfernt, und aus unbekanntem Grund wurde auch das Wort „Day“ in „Astronomy Picture of the Day“ entfernt
\u003ca .+?\\\u003e(.+)?\u003c\\/a\u003e
\u003cbig\u003e↓\u003c/big\u003e
Ein weiteres Beispiel, nur wegen eines entfernten Link-Textinhalts, der den Auszug seltsam zu lesen macht:
URI::regexp
\u003cbig\u003e↓\u003c/big\u003e
(„Der Link war This may be my favorite halo“…?)
\u003ca .+?\\\u003e(.+)?\u003c\\/a\u003e
\u003cbig\u003e↓\u003c/big\u003e
(jetzt ergibt das Sinn)
Ich schlage also nicht vor, dass \u003ca .+?\\\u003e(.+)?\u003c\\/a\u003e besser ist, es war nur ein schneller Test, aber ich bin mir nicht sicher, ob die Verwendung von URI::regexp die beste Wahl ist, angesichts der Ergebnisse, sowohl aus den beiden genannten Gründen: Der Link-Textinhalt verschwindet, was Auszüge manchmal seltsam macht, und er entfernt auch von Zeit zu Zeit Wörter innerhalb oder außerhalb von Links aus einem obskuren Grund. Letzteres Problem scheint häufig genug zu sein, um nicht vernachlässigbar zu sein.
Ich schätze die Nachteile der aktuellen Methode (einschließlich des überraschend seltsamen Übereifers des aktuellen Algorithmus, der zu viel löscht), aber wir sind durch Erfahrung hierher gekommen.
Der Hauptgrund, warum diese Option existiert, ist eigentlich:
- Formatierung der Vorschau beibehalten, wenn Links sehr lang sind (d. h. alle Links löschen, damit ein langer Link niemals in den Auszug gelangt und Probleme verursacht). Probieren Sie das Szenario aus, in dem ein Link sehr, sehr lang ist. Das alte Support-Thema ist übersät mit Problemen mit Themenbeiträgen mit langen Links.
- Den Auszug als vorhersehbare Klickfläche beibehalten, wo er immer zum Thema navigiert. Der Text ist zu klein, um dies diskretionär zu gestalten.
Außerdem sollte es:
- einfach zu warten sein und keinen Support-Lärm verursachen. Da die aktuelle Methode eine unterstützte Utility-Klasse ist, muss ich mich nicht um deren Wartung kümmern.
Ich bin noch nicht überzeugt, dass wir dies für die breite Öffentlichkeit ändern müssen?
Ich könnte offen dafür sein, dies zu einer Auswahl von drei Optionen zu machen: AUS, keine Links (d. h. aktuelle Methode) und experimentell? PR willkommen. Ich werde den aktuellen Sidecar-Code zuerst in den Master-Plugin-Branch verschieben. Ich werde versuchen, das diese Woche zu tun.
Vielen Dank für Ihre Antwort ![]()
Ich habe den letzten Satz meines vorherigen Beitrags korrigiert, mir hat ein Wort gefehlt…
Ich schrieb
und es entfernt auch ab und zu Wörter innerhalb oder außerhalb von Links aus einem obskuren Grund. Das letztere Problem scheint häufig genug zu sein, um vernachlässigbar zu sein.
Ich habe ein „nicht“ vergessen, also…
und es entfernt auch ab und zu Wörter innerhalb oder außerhalb von Links aus einem obskuren Grund. Das letztere Problem scheint häufig genug zu sein, um nicht vernachlässigbar zu sein.
Ich verstehe vielleicht nicht viel von Code, aber ich werde versuchen, das Problem Nr. 2, das ich hier erwähnt habe, zu verstehen und zu beheben: Topic List Previews (TLP) - #110 by Canapin heute.
(die Auszüge sind nicht richtig von .topic-excerpt umschlossen: der Wrapper scheint sich kurz vor dem ersten Link im Auszug zu schließen, anstatt am Ende des Auszugs)
Ich denke, der beste Ansatz wäre, ein Problem mit dem Maintainer dieses Dienstprogramms zu melden und sie es beheben zu lassen? Es verhält sich sicherlich nicht so, wie man es erwarten würde?
Ja, das habe ich mir noch nicht angesehen. Fühlen Sie sich frei, in der Zwischenzeit einen PR für eine Korrektur einzureichen.
Danke, daran habe ich nicht gedacht, ich hatte keine Ahnung, woher dieses Dienstprogramm stammt.
Nach einigem Suchen erkennt der Regex im Grunde jedes Wort oder jede Zeichenkette als Teil eines URI-Schemas, solange es sofort von einem Doppelpunkt gefolgt wird – d.h. ohne Leerzeichen dazwischen –, was verständlich ist, aber auch ein wenig zu viel, da wir im Englischen (im Gegensatz zum Französischen zum Beispiel) kein Leerzeichen zwischen einem Wort und einem Doppelpunkt setzen. Daher werden „legitime“ Wörter vom Regex verschluckt, nur weil sie unglücklicherweise von einem Doppelpunkt gefolgt werden.
Eine Korrektur könnte darin bestehen, ein Feld (nicht vorausgefüllt, um Schäden bei bestehenden Installationen zu vermeiden) in den Plugin-Einstellungen einzufügen, um die zu entfernenden Schemata einzugeben.
Zum Beispiel könnte die Einstellung lauten:
Zu entfernende URI-Schemata: http|https|ftp|mailto
Dies würde zu folgendem Ergebnis führen:
#{URI::regexp(['http', 'https', 'ftp', 'mailto'])}
(aber es ist leider Groß-/Kleinschreibungsempfindlich, aber das kann sicher irgendwie angepasst werden)
Wenn die Einstellung leer ist, wird Folgendes verwendet:
#{URI::regexp}
Was dem aktuellen Verhalten entspricht.
Wäre ein Pull Request mit einer solchen Einstellung willkommen?























