Se producen errores cuando un nuevo usuario se registra. La barra lateral derecha no muestra ninguna información excepto el texto de bienvenida y el subtítulo, pero sin el nombre. Sé que muestra los ‘me gusta’ si hay alguno y también las insignias. ¿Sería posible corregir esta barra lateral para que muestre los ‘me gusta’ y las insignias? Me refiero a 0recibidos, 0enviados y sin insignias. Aún no tienes insignias… Consulta cómo conseguir algunas… o algo similar. Es decir, texto o enlace si aún no hay insignias.
Sí, funciona perfectamente para mí en cualquier dispositivo. Creo que es difícil que un tema cause este problema.
¿Has intentado reproducirlo en modo seguro?
¿Podrías publicar el tema donde está el video para que podamos revisarlo?
Hola, estoy aprendiendo sobre el desarrollo de temas y plugins para Discourse. Me encanta el tema Fakebook y lo estoy utilizando para profundizar mi comprensión, pero tengo algunas dudas.
El archivo “javascripts/discourse/templates/mobile/list/topic-list-item.hbr” contiene un 100% de código duplicado del archivo “common/header.html”.
Mis preguntas son:
¿No hay alguna manera de incluir un archivo hbr dentro de un archivo HTML, de modo que podamos simplemente incluir topic-list-item.hbr en common/header.html en lugar de duplicar el código en dos lugares?
¿Por qué necesitamos topic-list-item.hbr desde el principio? ¿No deberían los archivos de la carpeta common aplicarse tanto a escritorio como a móvil?
No creo que sea posible… normalmente podría crear un componente que use una plantilla y luego incluirlo para el componente en ambas sobrescrituras… pero nuestros elementos de lista de temas son un tipo especial de plantilla construida para el rendimiento (hbr = plantilla raw de Handlebars), y las plantillas raw no pueden usar componentes. (Algunos debates anteriores en Mounting widget in raw template? - #7 by angus)
Así es como está estructurada la CSS de Discourse (y algunos archivos HTML especiales para temas como encabezado/pie de página, etc.), pero dentro del directorio javascripts/discourse/templates, esas plantillas son sobrescrituras directas de los valores predeterminados de Discourse (cuando no hay una sobrescritura, se utilizan las plantillas predeterminadas).
En Discourse hay dos plantillas: /templates/list/topic-list-item.hbr y /templates/mobile/list/topic-list-item.hbr. Por lo tanto, como hay dos plantillas, necesitamos dos sobrescrituras.
Tal vez exista una forma sencilla de hacer que el móvil apunte a la plantilla no móvil en el JS… ¡pero si existe, no tengo conocimiento de ello!
¡Hablé demasiado pronto! Lo revisé y en realidad lo resolví poco después de publicar la respuesta anterior. A veces, escribir las cosas puede lograr eso.
He realizado una actualización para que sea solo una plantilla… por defecto, en topic-list-item.js tenemos un código que se ve así:
Esto ahora apunta a una plantilla separada y, como no hay una contraparte móvil con el mismo nombre… también se utiliza para móviles. ¡Gracias por inspirar el cambio con tu pregunta @hyd504!