Unsere Themenlisten-Markup ist seit Beginn des Discourse-Projekts weitgehend unverändert geblieben. Um die neuesten Webtechnologien nutzen zu können, planen wir einige Änderungen, die das Theming-Potenzial von Topic Lists verbessern werden.
Um den Übergang so reibungslos wie möglich zu gestalten, werden wir diese Änderungen schrittweise vornehmen und hoffen, dass die Migration irgendwann im ersten Quartal 2022 abgeschlossen sein wird.
Schritt 1: Aktualisieren von CSS-Selektoren
Wir haben kürzlich die Klassen .topic-list-header, .topic-list-body und .topic-list-data hinzugefügt, um den Übergang einzuleiten.
theadhat jetzt die Klassetopic-list-headertbodyhat jetzt die Klasse… Sie haben es erraten!topic-list-bodytd-Elemente haben jetzt auch die Klassentopic-list-data
Für die überwiegende Mehrheit der Websites wird diese Änderung nahtlos verlaufen. Komplexe Themes/Plugins, die unsere Kernvorlagen überschreiben, müssen jedoch einige Updates erhalten.
Aktualisieren bestehender Vorlagenüberschreibungen
Wenn möglich, empfehlen wir, Vorlagenüberschreibungen zu entfernen und eine Kombination aus CSS und Plugin-Outlets für die Anpassung zu verwenden. Wenn das Entfernen der Überschreibungen keine Option ist, müssen Sie Ihre Überschreibungen manuell aktualisieren, um die neuen Klassen einzuschließen.
Die Vorlagen, denen Klassen hinzugefügt wurden, sind:
/templates/components/topic-list.hbs/templates/list/category-column.hbr/app/templates/list/posters-column.hbr/app/templates/list/posts-count-column.hbr/app/templates/list/topic-list-item.hbr/app/templates/topic-list-header-column.hbr/app/templates/topic-list-header.hbr
Schritt 2: Ändern von Elementtypen
Der nächste Schritt in diesem Prozess wird die Konvertierung der vorhandenen table-Elemente in geeignetere Elemente sein.
Vorbereiten benutzerdefinierter Stylesheets, die auf table-Elemente abzielen
Entfernen Sie vorerst alle Verweise auf table, thead, tbody, tr, td aus Ihren benutzerdefinierten Stylesheets und ersetzen Sie sie durch die neuen Klassen. Wenn wir dann schließlich die Elementtypen ändern, sollte Ihr benutzerdefiniertes Theming ohne Probleme weiter funktionieren.
Wir sind gespannt, was unsere Community von Theme- und Plugin-Entwicklern nach diesen Änderungen bauen wird! ![]()