Minimizando el mantenimiento en personalizaciones de temas

Discourse es altamente personalizable, lo que te permite modificar casi cualquier aspecto de su apariencia a través de temas.

Para mantener la compatibilidad con las actualizaciones continuas de Discourse y las nuevas funciones, todos los temas requieren un mantenimiento ocasional. La frecuencia del mantenimiento depende de la complejidad y el tipo de personalización. Puedes minimizar los esfuerzos de mantenimiento de tu tema siguiendo estas pautas:

  • Busca temas oficiales o componentes de temas que coincidan con la funcionalidad deseada. Estos se actualizan junto con Discourse. También pueden servir como ejemplos de cómo abordar tus propias personalizaciones.
  • Reemplaza el texto de la interfaz utilizando la función administrador → personalizar → texto, buscando el texto específico y actualizándolo allí.
  • El CSS del tema es aditivo, lo que te permite anular los estilos predeterminados sin editarlos directamente. Este enfoque mejora la mantenibilidad del CSS y minimiza los conflictos con las actualizaciones.
  • Utiliza un sistema de control de versiones como Git con GitHub, GitLab o Bitbucket para rastrear los cambios. Si bien el editor de HTML y CSS en administrador → personalizar → temas es conveniente para ajustes menores, los sistemas de control de versiones pueden facilitar el seguimiento y la resolución de problemas de cambios más complejos.
  • Para personalizaciones avanzadas, crea módulos independientes para nueva funcionalidad e intégralos a través de salidas de plugins. Discourse utiliza Ember.js, por lo que construir componentes Ember es ideal. Este método aísla la funcionalidad personalizada, reduce el mantenimiento y ayuda a evitar conflictos con las actualizaciones de Discourse.

Anular el JavaScript y las plantillas HTML predeterminados de Discourse dentro de un tema debe ser el último recurso, ya que es más probable que estos cambios sean incompatibles con las actualizaciones de Discourse, sean difíciles de depurar y sean más propensos a errores que resulten en tiempo de inactividad.

Para obtener más información sobre el uso y la creación de temas de Discourse, no dudes en hacer preguntas en nuestra comunidad Meta, y consulta nuestras guías de temas:


Este documento tiene control de versiones; sugiere cambios en github.

13 Me gusta