(non recommandé) Surcharge des modèles de Discourse depuis un thème ou un plugin

Oui, je vous entends bien - il y avait de bonnes choses dans les API d’extensibilité des widgets.

Mais le revers de la médaille est qu’il nous a été incroyablement difficile de modifier N’IMPORTE QUEL élément de l’interface utilisateur basée sur les widgets dans le cœur, car nous n’avons aucune idée des méthodes/décorations aléatoires que les gens pourraient introduire. C’est pourquoi les personnalisations de widgets ont semblé relativement stables - nous avons eu trop peur de toucher aux implémentations de base.

Notre solution pour l’avenir est les sorties de plugin Wrapper. Celles-ci permettent aux thèmes et aux plugins de remplacer facultativement de très petits morceaux de modèles par leur propre implémentation.

Par exemple, voyez comment Chat remplace conditionnellement le logo d’accueil avec un composant personnalisé. Cela fonctionne pour l’en-tête existant basé sur les widgets, et le nouvel en-tête basé sur glimmer (bientôt disponible ! :tm:).

Nous sommes généralement heureux d’accepter les PR pour ajouter de nouvelles sorties wrapper à divers endroits. Si vous n’êtes pas sûr d’un cas d’utilisation particulier, n’hésitez pas à ouvrir un sujet Dev avec les détails !

10 « J'aime »