dsims
(Daniel)
13. Februar 2025 um 19:12
1
Ich möchte den Avatar des Themen-Erstellers zu Themenlisten-Auszügen hinzufügen, aber es scheint keine Möglichkeit zu geben, den Themen-Auszug zu ändern.
Themen-Auszug:
Ich denke, die einzige Möglichkeit ist, .topic-excerpt mit CSS zu verstecken und meine eigene Komponente über den topic-list-main-link-bottom Plugin Outlet zu verwenden, der sich direkt unter dem Themen-Auszug-Bereich befindet. Das Problem damit ist, dass das Plugin Outlet nur das Thema als Argument erhält, sodass ich die gesamte Logik in expandPinned duplizieren muss, um zu wissen, ob ich es anzeigen soll oder nicht.
tl;dr; Könnten wir einen Plugin Outlet innerhalb des Themen-Auszugs bekommen und/oder @expandPinned an die topic-list-main-link-bottom Outlets übergeben?
1 „Gefällt mir“
merefield
(Robert)
13. Februar 2025 um 19:20
2
Sie haben jetzt mehr Optionen, siehe:
The topic-list is one of the most-used and most-customized user-interfaces in Discourse. There are many different tools available to theme and plugin developers to achieve this customization, each with their own advantages, disadvantages and maintenance considerations.
CSS-based Customization
The safest and most common customization method is CSS. As with any other Discourse customization: the more complex your changes, the more maintenance is likely to be required in your theme or plugin.
Gen…
1 „Gefällt mir“
dsims
(Daniel)
13. Februar 2025 um 19:31
3
Soweit ich weiß, habe ich alle Optionen geprüft. Soweit ich sehen kann, gibt es keine chirurgische Möglichkeit, nur den Auszug zu ändern.
merefield
(Robert)
13. Februar 2025 um 19:32
4
Ja, es gibt einen, löschen Sie ihn und fügen Sie Ihren eigenen hinzu.
dsims
(Daniel)
13. Februar 2025 um 19:40
5
Meinen Sie, ich soll das gesamte Thema-Listenelement durch mein eigenes ersetzen? Ich möchte vermeiden, all das pflegen zu müssen, wenn ich nur einen kleinen Teil ändern möchte.
merefield
(Robert)
13. Februar 2025 um 19:41
6
Nein, ersetzen Sie die Auszüge-Zelle oder fügen Sie eine weitere daneben ein und blenden Sie sie aus.
dsims
(Daniel)
13. Februar 2025 um 19:46
7
Der Auszug ist keine Zelle. Er wird innerhalb der topic-cell und im mobile item verwendet.
Sie können dort auch sehen, dass der nahegelegene topic-list-main-link-bottom Plugin-Outlet nur das @topic übergibt, aber nicht @expandPinned .
1 „Gefällt mir“
merefield
(Robert)
13. Februar 2025 um 19:52
8
Ja, Sie haben Recht, Entschuldigung.
Ich habe die Datei in den Topic-List-Komponenten gesehen und eine Annahme getroffen.
Aber auf jeden Fall gibt es hier viele Werkzeuge, um das zu erreichen, was Sie wollen, oder?
Plugin-Outlet sieht wie eine gute Option aus und dann das Layout mit CSS manipulieren?
merefield
(Robert)
13. Februar 2025 um 20:00
9
Was das expandPinned angeht, vielleicht die Logik in Ihrer neuen Komponente so weit wie nötig replizieren?
dsims
(Daniel)
13. Februar 2025 um 20:35
10
Ja, das ist der Weg, den ich eingeschlagen habe. Was auch bedeutet, zu replizieren
get useMobileLayout() {
return applyValueTransformer(
"topic-list-item-mobile-layout",
this.site.mobileView,
{ topic: this.args.outletArgs.topic }
);
}
//und aus discovery/topics.js
get expandGloballyPinned() {
!this.expandAllPinned();
}
get expandAllPinned() {
const category = this.discovery.category?.id
const tag = this.discovery.tag?.id
return category || tag;
}
Ich hoffte, dass Flehen zu den Göttern eine sauberere Option hervorbringen könnte
1 „Gefällt mir“
merefield
(Robert)
13. Februar 2025 um 20:36
11
Das mache ich normalerweise montagmorgens.
2 „Gefällt mir“
das erscheint vernünftig, also habe ich es hier gemacht:
main ← dev-expandpinned-outlet
opened 08:33PM - 13 Feb 25 UTC
Requested on Meta, seems reasonable: https://meta.discourse.org/t/modify-topicex… cerpt-template/352136
5 „Gefällt mir“
system
(system)
Geschlossen,
16. März 2025 um 14:40
13
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.