Ich fange gerade an, mich damit zu beschäftigen (ohne agentenbasiertes Coding).
Ich habe den Eindruck, dass es nicht allzu viel Aufwand kosten würde, dies in ein Theme-Component umzuwandeln, das nur die Startseite einer Site steuert – zum Beispiel einer, die bereits das Horizon-Theme verwendet. Wäre das dumm?
Außerdem habe ich ein paar Probleme bemerkt:
Der Block „Bevorstehende Ereignisse“ sortiert die Themen nicht
Er gibt einfach alle Ereignisthemen nach dem Erstellungsdatum aus; das ist absolut unpraktisch!!
ask.discourse.com schlägt diese Art von Änderung vor, um das Problem zu beheben, was ich bestätigen kann (verzeiht mir meinen Mangel an kritischem menschlichen Denken):
@bind
async fetchEvents() {
const count = this.args.count || 5;
const results = await ajax("discourse-post-event/events");
if (!results.events?.length) {
return null;
}
const now = new Date();
// Trenne vergangene und zukünftige Ereignisse, sortiere dann aufsteigend nach Startdatum
const upcoming = results.events
.filter((e) => new Date(e.starts_at) >= now)
.sort((a, b) => new Date(a.starts_at) - new Date(b.starts_at));
return upcoming.slice(0, count);
}
Der Block „Kategorie-Banner“ beachtet die Einstellungen nicht
Er wird in allen Kategorien angezeigt (nicht nur in den angegebenen), und scheint sich bei der Navigation nicht zu aktualisieren (nur bei einem Seiten-Refresh).