Ho creato un tema, ma non vorrei che fosse utilizzabile dagli utenti normali.
Posso utilizzare un tema senza selezionare “Il tema può essere selezionato dagli utenti”? (Sono un amministratore.)
Ho creato un tema, ma non vorrei che fosse utilizzabile dagli utenti normali.
Posso utilizzare un tema senza selezionare “Il tema può essere selezionato dagli utenti”? (Sono un amministratore.)
Sì. Vai all’editor del tema e clicca sul link ‘anteprima’ visualizzato in basso a destra nella pagina:
Intendevo come tema principale, ovvero il tema principale per me. Non solo l’anteprima, poiché l’anteprima tornerà alla normalità senza l’opzione di anteprima nell’URL.
Gli amministratori e i moderatori hanno la classe .staff assegnata al corpo della pagina, quindi in un tema potresti fare qualcosa del genere:
body.staff {
// inserisci qui il CSS del tuo tema per gli amministratori
}
Un utente normale potrebbe aggiungere la classe staff al proprio tag body (tramite l’ispettore del browser) e vedere anch’esso il tema, ma non sono sicuro del motivo per cui qualcuno dovrebbe preoccuparsi di farlo.
Per temi più avanzati, se stai utilizzando un outlet per plugin o modificando l’HTML con override dei template (vedi Guida per sviluppatori ai temi di Discourse), puoi fare qualcosa del genere:
{{#if currentUser.staff}}
<h1>ciao amministratori e moderatori!</h1>
{{/if}}
a) Non utilizzo alcun CSS nel mio tema, ma solo una palette di colori.
b) Ciò richiederebbe comunque di elencare il tema come disponibile.
Puoi sovrascrivere lo schema dei colori con il CSS (alcuni dettagli qui: Update themes and plugins to support automatic dark mode), altrimenti dovresti creare un plugin personalizzato per consentirti di impostare un tema diverso per un amministratore, poiché non è una funzionalità esistente in Discourse.
L’idea sarebbe quella di inserire il CSS dell’amministratore nel tuo tema predefinito; a meno che qualcuno non si mettesse a scavare nel tuo CSS, saresti l’unico a vederlo/utilizzarlo.
Un’altra opzione è utilizzare un’estensione del browser come Stylish per impostare il CSS personalizzato localmente.