Discourse prend en charge les thèmes natifs qui peuvent être fournis à partir d’une archive .tar.gz ou d’un dépôt git distant, y compris les dépôts privés.
Un exemple de thème est disponible à l’adresse suivante : GitHub - discourse/discourse-simple-theme: Sam's simple discourse theme · GitHub
Le dépôt git sera vérifié pour les mises à jour (une fois par jour), ou en utilisant le bouton Vérifier les mises à jour. Lorsque des modifications sont détectées, le bouton Vérifier les mises à jour changera en Mettre à jour vers la dernière version.
![]()
Pour créer un thème, vous devez suivre une structure de fichiers spécifique. Voici les fichiers que vous pouvez inclure :
about.json (requis)
common/common.scss
common/header.html
common/after_header.html
common/footer.html
common/head_tag.html
common/body_tag.html
common/embedded.scss
desktop/desktop.scss
desktop/header.html
desktop/after_header.html
desktop/footer.html
desktop/head_tag.html
desktop/body_tag.html
mobile/mobile.scss
mobile/header.html
mobile/after_header.html
mobile/footer.html
mobile/head_tag.html
mobile/body_tag.html
locales/en.yml
locales/{locale}.yml
stylesheets/{anything}/{anything}/{anything}.scss
javascripts/{anything}.js
javascripts/{anything}.gjs
javascripts/{anything}.hbs
assets/{asset_filename}
settings.yml
Tous ces fichiers
sont facultatifs, vous n’avez donc besoin de créer que ceux qui sont nécessaires.
Pour ceux qui souhaitent diviser le SCSS de leur thème en plusieurs fichiers, c’est désormais possible.
Pour ceux qui souhaitent diviser leur thème en plusieurs fichiers JS, il suffit d’ajouter les fichiers JS souhaités dans le répertoire javascripts.
La structure du fichier about.json est présentée ci-dessous, et vous pouvez en savoir plus à l’adresse Adding metadata and screenshots to a Theme :
{
"name": "My Theme",
"component": false,
"license_url": null,
"about_url": null,
"authors": null,
"theme_version": null,
"minimum_discourse_version": null,
"maximum_discourse_version": null,
"assets": {
"variable-name": "assets/my-asset.jpg"
},
"color_schemes": {
"My Color Scheme": {
"primary": "222222"
}
},
"screenshots": ["screenshots/light.jpeg", "screenshots/dark.jpeg"]
}
Les instructions sur la façon d’ajouter des paramètres à votre thème sont disponibles ici : Add settings to your Discourse theme.
Pour indiquer à Discourse que vous allez ajouter un composant de thème et non un thème complet, ajoutez simplement la ligne "component": true au fichier about.json.
La structure des fichiers correspond au CSS / HTML personnalisé du thème.
Lectures complémentaires
Consultez les autres articles avec le tag #themes::tag.
Voir aussi :
- Developing Discourse Themes & Theme Components
- Install the Discourse Theme CLI console app to help you build themes
- Include assets (e.g. images, fonts) in themes and components
Dernière révision par @SaraDev le 2022-08-15T21:00:00Z
Ce document est sous contrôle de version - suggérez des modifications sur github.

