Creo que la respuesta depende un poco de tus expectativas sobre cuánto atraen las diferentes materias dentro de tu comunidad a un miembro determinado.
¿Esperas mucha superposición entre los grupos que discuten fotografía y cocina? Si es así, las etiquetas para estos diferentes temas probablemente funcionen bien.
¿O estás tratando de servir a múltiples subcomunidades, una para cocina y otra para fotografía, dentro del mismo sitio? Si es así, es posible que prefieras categorías para cada una.
Voy a asumir que estás hablando primero de una sola comunidad, donde las personas pueden discutir muchos temas juntas.
Mi sugerencia sería comenzar con algo más parecido al Enfoque B.
Tener diferentes categorías para los diferentes tipos de contenido te permitirá señalar más claramente qué tipo de discusión es y cuál es el comportamiento esperado de los participantes. Puedes llevar eso más allá en algunos casos configurando las categorías para esos propósitos (por ejemplo, usando el plugin solved para una categoría de preguntas y respuestas).
Luego, apóyate primero en las etiquetas para la materia. Eso te da la libertad de aplicar múltiples etiquetas a las discusiones cuando hay superposición (¡fotos de cocina!).
Si, en algún momento, observas que es útil dividir claramente algunas materias de otras, puedes usar las etiquetas para ayudar a reclasificar las cosas.
En general, recomendamos menos categorías, en lugar de más, especialmente al comenzar, y una jerarquía menos profunda en lugar de una profunda. Por defecto, solo admitimos dos niveles de profundidad. Tienes que esforzarte para activar el soporte para un tercero.
No sé si la gente usa mucho las URL para pre-rellenar el compositor. Puedo imaginar que sea útil en algunos escenarios, pero te sugeriría dejar esa idea a un lado hasta que encuentres una necesidad para ella.
Para el descubrimiento, algo más que puedes consultar es la página /filter, que te permite construir listas de temas más personalizadas, que podrías configurar en la barra lateral de tu sitio: Filtering topic lists in Discourse