Imposta tema dinamicamente

Buon Anno a tutti!
Voglio impostare dinamicamente il tema sul mio sito web (basato su Discourse).
Quindi voglio impostare un tema diverso (ho già importato alcuni temi) ogni tot ore o per domini diversi.
È possibile?
Se è possibile, chiunque lo sappia mi aiuti a implementarlo per favore.
Oppure quale funzione dovrei modificare per implementare questa funzionalità?
Grazie.

Domanda interessante.

Solo un’ipotesi. Suppongo che tu possa creare uno script che utilizzi l’API di Discourse effettuando una richiesta PUT su https://yourdiscourse.com/admin/themes/[id_theme] con il corpo {\"theme\":{\"enabled\":false}} (false per disabilitare o true per abilitare).

Potrei provare stasera.

Mi scusi per la lunga attesa. Giornata impegnativa :technologist:

Quindi, puoi abilitare o disabilitare un tema o un componente con una semplice richiesta API.

Dovrai creare una chiave API con le credenziali corrette e assegnarle un utente amministratore.

  • nel tuo Discourse: pannello admin → API → big>+ big> Nuova chiave API big>
  • nello script che utilizzerai, come menzionato, effettua una richiesta PUT su https://yourdiscourse.com/admin/themes/[id_theme] con le intestazioni appropriate (vedi la parte di autenticazione su https://docs.discourse.org/) e un corpo JSON come questo:
    {"theme":{"enabled":false}}
    

Questo disabiliterà il tema/componente scelto. Esempio video con Insomnia: