¿Ignorar tema para el backend de administración o agregar classname a <html>?

Continuando la discusión de ¿Un tema diferente para el panel de administración?:

El workaround recomendado actualmente para no aplicar un tema a la interfaz de administración es:

Discourse soporta SCSS, lo que significa que solo necesitas añadir body:not(.admin-interface) una vez a tu tema. No es necesario añadirlo a cada regla.

A primera vista, esto parece un poco problemático porque el selector :root, donde se definen varios colores, está encima de <body>, y los colores personalizados siguen afectando tanto a la interfaz de administración como a la de los usuarios.

Sería más fácil si la etiqueta <html> también tuviera la clase .admin-interface (o una variante de la misma). (O, mejor aún, las personalizaciones del tema serían aún más sencillas si se pudiera configurar un tema separado (predeterminado) para la interfaz de administración.)

Si Discourse permitiera a los creadores de temas diseñar solo las partes visibles para los usuarios normales, probablemente facilitaría la creación y personalización de temas.


Un tema relacionado es el uso de un idioma diferente para la interfaz de administración (discutido aquí: Can discourse have different language interfaces for admin only?). Esto sería especialmente útil para ajustar las traducciones en idiomas que tienen una cobertura muy deficiente (es decir, incorrecta) o incompleta (muchas cadenas sin traducir).

Actualmente estoy configurando Discourse en estonio y me gustaría corregir las malas traducciones dirigidas a los usuarios a medida que las vea, pero usar la interfaz de administración en estonio es muy confuso porque muchos textos son incorrectos o simplemente incomprensibles.

2 Me gusta

Sí, creo que tendría sentido que separáramos el área de administración en algún momento; definitivamente puede ser una carga adicional para los temas, lo cual usualmente no es necesario. WordPress también separa los temas y estilos del área de administración.

Mientras tanto, he creado una PR para agregar una clase admin-area a la etiqueta HTML. Usé un nombre diferente y mantuve la etiqueta body antigua para que no afecte a los temas existentes.

6 Me gusta