Frohes neues Jahr, allerseits!
Ich möchte auf meiner Website (basierend auf Discourse) dynamisch ein Theme festlegen.
Ich möchte also alle paar Stunden oder für verschiedene Domains ein anderes Theme festlegen (ich habe bereits einige Themes importiert).
Ist das möglich?
Wenn dies möglich ist, kann mir bitte jemand helfen, dies zu implementieren.
Oder welche Funktion sollte ich ändern, um diese Funktion zu implementieren?
Vielen Dank.
Interessante Frage.
Nur eine Vermutung. Ich nehme an, Sie können ein Skript erstellen, das die Discourse-API verwendet und eine PUT-Anfrage an https://yourdiscourse.com/admin/themes/[id_theme] mit dem Body {\"theme\":{\"enabled\":false}} (false zum Deaktivieren oder true zum Aktivieren) sendet.
Ich werde es vielleicht heute Abend versuchen.
Entschuldigen Sie die lange Wartezeit. Ein geschäftiger Tag ![]()
Sie können also ein Theme oder eine Komponente mit einer einfachen API-Anfrage aktivieren oder deaktivieren.
Sie müssen einen API-Schlüssel mit den richtigen Anmeldeinformationen erstellen und ihm einen Administratorbenutzer zuweisen.
- in Ihrem Discourse: Admin-Panel → API → big>+ big> Neuer API-Schlüssel
- in dem von Ihnen verwendeten Skript, wie erwähnt, führen Sie eine PUT-Anfrage an
https://yourdiscourse.com/admin/themes/[id_theme]mit den entsprechenden Headern (siehe Authentifizierungsteil auf https://docs.discourse.org/) und einem JSON-Body wie diesem durch:{"theme":{"enabled":false}}
Dadurch wird das gewählte Theme/die gewählte Komponente deaktiviert. Videobeispiel mit Insomnia:
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.