Définir le thème dynamiquement

Bonne année à tous !
Je veux définir un thème dynamiquement sur mon site web (basé sur Discourse).
Je veux donc définir un thème différent (j’ai déjà importé des thèmes) toutes les quelques heures ou pour différents domaines.
Est-ce possible ?
Si c’est possible, quelqu’un qui sait comment faire, aidez-moi à l’implémenter s’il vous plaît.
Ou quelle fonction devrais-je modifier pour implémenter cette fonctionnalité ?
Merci.

3 « J'aime »

Question intéressante.

Juste une supposition. Je suppose que vous pouvez créer un script qui utilisera l’API de Discourse en effectuant une requête PUT sur https://yourdiscourse.com/admin/themes/[id_theme] avec le corps {\"theme\":{\"enabled\":false}} (false pour désactiver ou true pour activer).

J’essaierai peut-être ce soir.

1 « J'aime »

Désolé pour la longue attente. Journée chargée :technologist:

Vous pouvez donc activer ou désactiver un thème ou un composant avec une simple requête API.
Vous devrez créer une clé API avec les bons identifiants et lui attribuer un utilisateur administrateur.

  • dans votre Discourse : panneau d’administration → API → + Nouvelle clé API

  • dans le script que vous utiliserez, comme mentionné, faites une requête PUT sur https://votrediscourse.com/admin/themes/[id_theme] avec les bons en-têtes (voir la partie authentification sur https://docs.discourse.org/) et un corps JSON tel que :

    {"theme":{"enabled":false}}
    

Cela désactivera le thème/composant choisi. Exemple vidéo avec Insomnia :

1 « J'aime »

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.