(no recomendado) Sobrescribir las plantillas de Discourse desde un Theme o Plugin

Sí, te entiendo. Había cosas buenas en las API de extensibilidad de widgets.

Pero la otra cara de la moneda es que ha sido increíblemente difícil para nosotros modificar CUALQUIER interfaz de usuario basada en widgets en el núcleo, porque no tenemos idea de qué métodos/decoraciones aleatorias podrían estar introduciendo las personas. Es por eso que las personalizaciones de widgets han parecido relativamente estables: hemos tenido demasiado miedo de tocar las implementaciones principales.

Nuestra solución para esto en el futuro son los Wrapper Plugin Outlets. Estos permiten que los temas y complementos reemplacen opcionalmente fragmentos muy pequeños de plantillas con su propia implementación.

Por ejemplo, mira cómo Chat reemplaza condicionalmente el logo de inicio con un componente personalizado. Eso funciona para el encabezado existente basado en widgets y el nuevo encabezado basado en Glimmer (¡próximamente! :tm:).

En general, estamos contentos de aceptar PRs para agregar nuevos wrapper outlets en varios lugares. Si no está seguro de un caso de uso en particular, no dude en abrir un tema de Dev con los detalles.

10 Me gusta