Depuis un certain temps, la meilleure pratique consiste à éviter de modifier localement les thèmes installés à partir d’un dépôt Git distant sur Discourse. Toute modification apportée au code du thème ou aux fichiers téléversés est effacée lors de la mise à jour du thème depuis le dépôt distant.
Dans ce commit, nous avons supprimé la possibilité de modifier localement un thème distant et nous appliquons désormais cette meilleure pratique dans Discourse.
Que se passe-t-il si j’ai un thème distant avec des modifications locales ?
Rien pour le moment. Votre thème reste tel quel jusqu’à ce que vous le supprimiez ou le mettiez à jour depuis le dépôt distant.
Comment conserver mes modifications locales ?
Si vos modifications concernent uniquement le CSS :
Vous pouvez copier vos modifications CSS uniquement vers un nouveau composant de thème local. Pour ce faire :
- Cliquez sur Installer
- Cliquez sur Créer nouveau
- Cliquez sur le bouton Modifier dans le volet de droite.
- Copiez vos modifications CSS dans le fichier approprié (commun/mobile/bureau).
- Enregistrez et activez le composant de thème.
- Mettez à jour votre thème distant pour écraser les modifications locales et éviter les duplications CSS.
Si vous avez modifié autre chose que le CSS (JS/Modèles) :
Nous recommandons, si vous souhaitez conserver vos modifications locales, de transformer le thème en thème local. Pour ce faire :
- Ouvrez le thème dans Admin > Personnaliser
- Cliquez sur Exporter pour télécharger le thème avec vos modifications locales.
- Cliquez sur Installer sous la liste des thèmes, puis sur
Depuis votre appareil - Téléversez le thème exporté, installez-le et activez-le comme précédemment.
Une autre option pour ceux qui sont intéressés consiste à forker le thème distant sur GitHub, à valider vos modifications dans le dépôt forké, puis à installer ce fork sur votre instance Discourse. Cela permet de réappliquer vos modifications par rapport aux futures mises à jour du dépôt principal, ce que la conversion en thème local ne permet pas.
Enfin, assurez-vous de supprimer le thème distant pour éviter toute duplication de modifications et toute confusion à l’avenir.