Hola,
La configuración, implementada como un plugin y un tema:
Tenemos varias pestañas para cada categoría, cada una con un destino diferente.
-
“Acerca de” enlaza a un tema específico generado automáticamente que es invisible en la lista de temas. (/t/topic-slug/20)
-
“Temas” es la lista de temas “regulares”, el comportamiento habitual. (/c/parent-slug/child-slug/11)
-
“Eventos” es una lista de temas que contienen invitaciones a eventos (usando el plugin discourse-calendar). Estos temas tendrán la etiqueta “event”, o tendrán archetype=“event”, o ambas cosas. (/c/parent-slug/child-slug/11?archetype=event)
-
“Miembros” enlaza a la página del grupo de un grupo generado automáticamente asignado a esta categoría específica. (/g/group-slug)
Los problemas:
-
El problema principal es que tendremos varios tipos de temas. Actualmente tenemos “regulares” y “eventos”, pero planeamos agregar algunos más por razones comerciales. Estoy oscilando entre usar etiquetas o Topic.archetype para distinguirlos, pero cualquiera que usemos, queremos poder filtrar los temas de un tipo bajo su etiqueta correspondiente y que la lista se comporte como de costumbre. Es decir, la carga automática de temas al hacer scroll también debe filtrarse por ese tipo de tema, y los banners que anuncian la creación de un nuevo tema solo deben aparecer si estás viendo la pestaña del tipo de tema (regular o evento) del tema recién creado. (es decir, “Ver 1 evento nuevo o actualizado” solo debe aparecer si estás viendo la pestaña de Eventos).
-
El problema secundario es que queremos extender la URL de las categorías para hacer que las URLs de las pestañas sean consistentes. Es decir:
- “Acerca de” enlaza a “/c/parent-slug/child-slug/11/about”,
- “Temas” enlaza a “/c/parent-slug/child-slug/11/regular”,
- “Eventos” enlaza a “/c/parent-slug/child-slug/11/events”,
- “Miembros” enlaza a “/c/parent-slug/child-slug/11/members”,
Hemos buscado ejemplos de plugins que hagan algo similar a lo que queremos, pero el plugin Favoritos está roto, y el componente de tema Enlaces personalizados de navegación superior es para enlaces de nivel superior.
¿Existe una forma adecuada de crear rutas personalizadas a nivel de categoría, similares a “/c/category-slug/11/l/latest”, “/c/category-slug/11/l/new” y “/c/category-slug/11/l/top”? Estoy pensando en usar etiquetas para filtrar diferentes tipos de temas, pero he notado que el banner de “tema nuevo o actualizado” no aparece cuando estoy filtrado por etiqueta. ¿Es entonces el uso de arquetipos el camino a seguir?
Sé que esta es una publicación larga con múltiples preguntas, pero cualquier aporte sería muy apreciado.
