Ich würde gerne deine Version testen, @Don ![]()
Hallo ![]()
Klar, absolut! Ursprünglich habe ich diese Funktion direkt in mein eigenes benutzerdefiniertes Theme eingebaut, daher musste ich sie extrahieren und in ein eigenständiges Theme-Plugin aufteilen.
Auf meiner eigenen Website rufe ich das Modal über einen dedizierten Button auf, während dieses Theme-Plugin es direkt beim Klicken auf ein Thema auslöst.
Du kannst es hier im Theme Creator ausprobieren:
Wow, sieht sehr schnell aus. Gefällt mir wirklich gut. Ich wäre sehr daran interessiert, wenn du es Open Source stellen würdest. Gute Arbeit!
Ich habe das Buch der Gesichter seit Jahrzehnten nicht mehr verwendet, also gibt es dort keinen Bezug. Aber trotzdem… Don, das sieht wirklich schick aus. Ich hätte nicht erwartet, dass es mir gefällt, aber auf einem Handy könnte es wirklich cool sein. Wieder kein Bezug zu Facebook, aber für mich ist das so etwas wie ein Mittelweg zwischen einem normalen Forum und einem Chat.
Es sieht und fühlt sich sehr geschmeidig an. Sehr cool ![]()
Es scheint, als würden viele Netzwerk-Anfragen gesendet… Ich stoße beim Ausprobieren im Theme Creator ständig auf Ratenlimits. Es sieht so aus, als müssten alle Themeninhalte aus der Themenliste geladen werden, selbst wenn man das Thema nicht aufruft (was den schnellen Eindruck erklärt, oder?).
Ja, ich habe dieses Komponente ursprünglich für meine eigene Seite entwickelt, die ein benutzerdefiniertes Kartenlayout verwendet, bei dem nur 1–2 Themen gleichzeitig auf dem Bildschirm Platz finden. In dieser Konfiguration funktioniert das Viewport-Prefetching reibungslos, ohne dass Rate-Limits erreicht werden. Bei den standardmäßigen, tabellenbasierten Themenlisten von Discourse sind jedoch deutlich mehr Themen gleichzeitig sichtbar, wodurch die Prefetch-Warteschlange beim Scrollen viel schneller voll läuft.
Das ist tatsächlich der Hauptgrund, warum ich die Komponente noch nicht offiziell freigegeben habe – ich wusste, dass dieses Verhalten zunächst an die Standardlayouts angepasst werden muss.
Du hast absolut recht: Um daraus eine solide, allgemein einsetzbare Komponente zu machen, muss ich dies optimieren.
Gibt es eine Chance, dass du das Open Source stellst, damit ich mich damit ein bisschen beschäftigen kann?
Ich mag es ![]()
Ich denke, ehrlich gesagt, würde das besser zu deinem Thema passen und nicht zur Standardliste der Themen.
Ich habe gerade zwei neue Einstellungen hinzugefügt, um es für benutzerdefinierte Layouts viel flexibler zu gestalten:
-
trigger_style: Wähle zwischen dem Klickbaren der gesamten Themenzeile (row) oder dem Hinzufügen eines kleinen Expand-Icons (button), das die Vorschau öffnet, während der normale Themenlink unberührt bleibt. -
plugin_outlet: Wenn du den Button-Stil verwendest, kannst du das genaue Plugin-Outlet angeben, an dem das Expand-Icon gerendert wird (Standard isttopic-list-after-title).
Dies ermöglicht es benutzerdefinierten Themes, den Auslöser-Button bei Bedarf an ihre eigenen benutzerdefinierten Plugin-Outlets anzubinden.
Ich habe dieses exakte eigenständige Komponente gerade auf meiner Website aktiviert. Ich habe meinen ursprünglichen Code aus meinem Theme vollständig entfernt und durch diese Komponente ersetzt, die über <PluginOutlet /> läuft.
Außerdem habe ich einen Fehler in der Leseverfolgungsfunktionalität behoben.
Ich möchte es für kurze Zeit in einer Live-Produktionsumgebung testen, um sicherzustellen, dass alles stabil läuft, bevor ich es Open-Source stelle.
Übrigens: Ich habe die Theme Creator-Vorschau vorübergehend auf den Button-Auslösertyp umgestellt, damit du es testen kannst!
