Hallo zusammen! Dies ist kein Fragenbeitrag, sondern ich wollte einfach etwas beisteuern, wonach ich ziemlich häufig gesucht, aber dann selbst herausgefunden habe.
Grundsätzlich kannst du, wenn du website-bezogene Daten auf der Client-Seite erhalten möchtest, diese über das container-Objekt abrufen.
Zum Beispiel sieht der Code zum Abrufen der Kategorien so aus:
const container = Discourse.__container__;
const categories = container.lookup("controller:navigation/categories").site.categories;
Diese Funktionen sind nirgendwo dokumentiert, aber du kannst sie durch Ausprobieren herausfinden.
Wenn du etwas Komplexeres machen möchtest, kannst du dir auch diesen Beitrag ansehen: Reverse engineer the Discourse API