How do I create a sub-topic and a sub-sub-topic?

As a new creator of a discourse forum I want to recreate the topic structure I had in a forum I ran between 2004 and 2014 on a now obsolete base. It used an indefinite number of levels of subtopics. Yesterday, casually browsing through some part of (I think) Discourse Meta I noted a message about how to set up a multi-level table of contents, which tells me that such a thing is possible (and I presume trivially easy for a user to do), but I can’t find where to click to do it or to make a sub-sub category.

1 Like

You can have a hierarchy of categories, but AFAIK not a hierarchy within a topic (other than replies to messages).

1 Like

Discourse has categories and sub categories; it does not support an indefinite level of sub-categories. You can approximate more levels with tags. There is no such thing as a sub-topic.


That’s a real downer! How could tags be used to make it look to the casual user that there were subtopics. For example, I would like to have someone go to Science/PCT_Science/Individual/Conscious_Perception/Reorganization/Function_building and a few dozen such locations, most of them having been initiated by casual users. With only three levels of splitting, what hope do I have?

If you need that many levels of categorisation you’ll have to choose another forum software.

But although you may want your users to have to go through six levels, I doubt many of them actually do.


Either choose some other platform or back up to describe the problem rather than your perceived solution.


Good advice. Since Discourse is obviously popular and topics are many, there must be another way to group related topics into tree-like networks. The reason for choosing Discourse after a search was its integration with e-mail. I also run a mailing list on the same range of topics, and I want the users to be able to choose freely between the mailing list and the forum when contributing to a topic.

1 Like

When a user gets an email, there’s a choice at the end of it to reply by email or to go directly to that specific post on the forum. Does that help?

Yes, that possibility is a major reason I decided to try Discourse.

1 Like

It’s hard to imagine that your users really want or need that level of granularity, never mind being able to comply with it.

Users can watch tags, however, so you could have some reasonable set of category/sub-categories and let people use tags for other stuff, but I don’t think you can create a tag if you start a topic by email.

1 Like

It’s not what the users want, but what in the earlier forum they evolved to use, unchaperoned. Very few, as I remember, went that far, but they could have done, any time one of them wanted to.

I will have to look into the use of tags. I’m just at the start of trying to learn how to get Discourse to do what I want.

It’s often difficult to tell or remember why things are the way they are. It’s likely that what you are trying to replicate is a clumsy solution that was all you could do with the software that you had. (There’s a story about a young woman who thought that the ham had to be cut in half to cook it. For years the woman cook ham in her house that way until one day she asked her mother about it. It turned out that the reason the ham had always been cut in half was that the pot was too small to hold a whole ham.)

And, even if that solution is horrible, difficult to understand, and not really a solution to the problem at hand and it’s tons easier to do it however you solve it with Discourse, zillions of people will hate anything that is in the least bit different.

1 Like

I see how the differences could be frustrating, especially if you’re after a ‘like for like’ data model for your topics. Yet a 6 level tree seems daunting from a retrieval perspective. (I mean, a user trying to find something.)

If each node had 3 branches, then you’ve got 729 endpoints in a 6 level tree. And if you don’t really have 700+ endpoints, then why the need for all the branching?

We don’t know your user base, of course. They might be data scientists! But it might be that having the users build the tree dynamically has left you with a majority of categories with only one post.

A flatter tree structure might actually increase engagement because users find it easier to know where to post and where to find interesting discussions.

My suggestion is to think about how you could redesign your categories to make it easier to post/find content, before even picking a platform.

(I’m making a ton of assumptions about your information and your users, of course. Apologies if I’ve made some wildly incorrect assumptions. :slightly_smiling_face: )

PS - I believe the suggestions above is to have you set the categories in Discourse (up to two levels deep) and have your users create ‘tags’ for the topics they post to make it easy for them to retrieve their posts using the tag terms.) So they aren’t building a tree, but they are building a tag cloud that can be searched. Perhaps that’s the best of both worlds?


Mark, Everything you say makes sense. I hadn’t thought of a tag cloud, and was trying to figure out how to simulate a tree using tags. But of course, you are right, a tag cloud is better.

FYI, in my old forum, I have no actual idea how deep any of the tree branches would have been, since they depended entirely on what a user might do when posting a new topic or answering an old one by splitting it. I suspect that many would have been only a couple of levels deep. In Discourse, I gather that one can reconfigure the category/sub-category structure without losing existing messages, but I’m a long way away from doing that.