Is it possible to create subcategories within subcategories? For example, can I have a grandparent category, parent subcategory, and child subcategory? If not, is there any alternative to creating a separate instance for each “grandparent”?
No, there are only two levels of categories in Discourse.
We’ll combine the 2 levels of categories with tags. It’s not just about taxonomy, it’s also about moderation rights.
Will 3 levels of categorization be possible in the future? My site is about 4 sports, then within each sport, I want a category called “Gear”, and then within “Gear” have the different brands.
I could also do a top level category called Gear, and then have the Gear Companies underneath.
Or just have the Gear companies for each sport listed directly under the sport.
No plans for more than 2 levels of categories. As @jeans noted, adding tags into the mix makes more sense at that point. So use the official tag support built into Discourse.
@codinghorror What would be the technical implications of allowing deeper nesting of categories? I don’t have a specific requirement in mind, just curious. I can see UI concerns, but the data model looks like it could handle chains of parents.
Here a typical case where we need to configure Discourse with 3 levels,
Local Groups - Open Knowledge Forums
the local-groups are in fact the “level zero”, in some cases we also change language (!), as at local-groups/okbr. The main topics are at this level-2, it is ok, but…
The level-3 is important to isolate very distinct topics and/or communities:
-
to isolate official topics. Example: today we use the “official” tag as here, but we need to isolate as
local-groups/okbr/oficial, -
to isolate projects, because they have independent communities and very specific topics. Example: this project was losted in an external category, openspending/gastos-abertos, we need an intersection between
openspendingandlocal-groups/okbrand we understand that the second is the priority, so need categorylocal-groups/okbr/prj-gastos-abertosthat is a typical “local group project” category.
This is interesting that have you decided that any existing field of knowledge may require to be split by exactly one level of categories but never by level two or higher. While I don’t know your exact reasoning but for me it’s very hard to believe that this can be the truth.
Two levels, not three. And we’re not the only people to think so.
We were very proud of our user interface and the fact that we had a way to browse 16,000 (!!) pages of documentation on a CD-ROM. But browsing the hierarchy felt a little complicated to us. So we asked Tufte to come in and have a look, and were hoping perhaps for a pat on the head or some free advice.
He played with our AnswerBook for about 90 seconds, turned around, and pronounced his review:
“Dr Spock’s Baby Care is a best-selling owner’s manual for the most complicated ‘product’ imaginable – and it only has two levels of headings. You people have 8 levels of hierarchy and I haven’t even stopped counting yet. No wonder you think it’s complicated.”
How can you actually tag a category?
Hola, gracias por la gran herramienta de debate y la comunidad. Me gustaría saber si existe la posibilidad de crear subcategorías dinámicamente. ¿Cómo se puede hacer esto con las etiquetas?
Pruébalo
Ahora puedes crear subcategorías, solo haz que la categoría principal sea la categoría bajo la cual deseas tener la subcategoría.
Ahora es posible cambiar el nivel de las subcategorías a través de una configuración oculta del sitio:
cd /var/discourse/
./launcher enter app
rails c
SiteSetting.max_category_nesting = 3
Se refiere a subcategorías secundarias, es decir, un tercer nivel, no a un segundo nivel (subcategorías).
Bien. Y esa configuración oculta hace posible tener Sub-Subcategorías (tres niveles, de ahí el 3 en la configuración). Había estado disponible durante un año, creo, pero no recibió mucha atención cuando se agregó (simplemente estaba en las notas de la versión, pero tal vez no tenía un encabezado). Supongo que algún cliente empresarial debe haber querido la función, pero todavía piensan que es una mala idea. ![]()
Es posible una vez que la función esté habilitada. Estableces el padre a la subcategoría en lugar de la categoría padre para crear una sub-sub.
Así es como se ve la pantalla de creación de una categoría al hacer una sub-sub:
No recuerdo quién lo solicitó originalmente, pero pedimos que se habilitara hace poco más de un año en los foros de NaNoWriMo con la esperanza de que eventualmente ayudara a resolver un problema mucho mayor y algo único que tenemos.
Resolvió nuestro problema de casos de prueba, pero lamentablemente nada menos que un milagro arreglaría el otro problema. ![]()



