Explicación excelente. Muchas gracias por esta respuesta. Destaca algo que no había considerado antes:
De estas respuestas, entiendo que (como mencionas) interactuar con la API JSON puede ser un buen punto de partida en muchos casos, lo que podría evitar la necesidad de desarrollar un nuevo tema o plugin. Sin embargo, hay ciertos tipos de datos que no están expuestos por la API. Para acceder a ellos y trabajar con esos tipos de datos, necesitarías utilizar el serializador de datos de Discourse; y para realizar esa serialización, debes usar un plugin.
Parece que un buen ejemplo de datos no disponibles a través de la API son los propietarios de un grupo. Lo digo porque (en relación con el acceso a los propietarios de grupo):
Un punto de confusión: en la API de Discourse, cuando obtienes un grupo específico, una de las propiedades devueltas se indica como "is_group_owner": true, así que no estoy seguro de qué significa eso…
Pero parece que para obtener al propietario del grupo necesitaría serializar la propiedad del propietario del grupo.
¿Existen buenos ejemplos de uso del serializador de Discourse? He visto esto, pero dada su importancia, una guía paso a paso con algunos ejemplos sería extremadamente útil.
El ejemplo más cercano que tengo es:
Esto es útil, pero no del todo correcto (al menos me da errores que dicen “plugin no válido”). No estoy seguro de cómo ajustarlo para que en la página de índice de grupos pueda acceder a los propietarios de cada grupo.