# Category Groups

**URL:** https://meta.discourse.org/t/category-groups/200874
**Category:** Theme component
**Tags:** official, category-groups
**Created:** [August 18, 2021, 6:35pm UTC](https://meta.discourse.org/t/category-groups/200874 "2021-08-18T18:35:21Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![Discourse](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/discourse/32/148734_2.png) [@Discourse](https://meta.discourse.org/u/Discourse)
#### Post date: [August 18, 2021, 6:35pm UTC](https://meta.discourse.org/t/category-groups/200874/1 "2021-08-18T18:35:21Z")

</div>

| | | |
| --- | --- | --- |
| :discourse2: | **Summary** | **Category Groups** allows you to assign categories to groups, which are then used to sort and collapse categories on the categories page. |
| 👓 | **Preview** | [Preview on Discourse Theme Creator](https://discourse.theme-creator.io/theme/Discourse/category-groups) |
| 🛠 | **Repository Link** | [https://github.com/discourse/discourse-category-groups-component](https://github.com/discourse/discourse-category-groups-component) |
| 📖 | **New to Discourse Themes?** | [Beginner’s guide to using Discourse Themes](https://meta.discourse.org/t/beginners-guide-to-using-discourse-themes/91966) |

Install this theme component

> [@](#):
>
> :discourse2: As this is an #official theme component maintained by the Discourse team, #Support, #Contribute > Bug, #Contribute > UX, and #Contribute > Feature requests can be made in the respective categories here on Meta, and tagged with the appropriate theme component tag. Click on a link below to get one started. 👍
> 
> [❓&nbsp; **Support**](https://meta.discourse.org/new-topic?category_id=6&tags=category-groups "Ask for support on configuring and using Category Groups") [🐛&nbsp; **Bug**](https://meta.discourse.org/new-topic?category_id=1&tags=category-groups "A bug report means something is broken, preventing normal/typical use of the theme component") [👀&nbsp; **UX**](https://meta.discourse.org/new-topic?category_id=9&tags=category-groups "Discussion about the user interface of Category Groups, and how features are presented (including language and UI elements)") [💡&nbsp; **Feature**](https://meta.discourse.org/new-topic?category_id=2&tags=category-groups "Discussion about how existing Category Groups features can be improved or enhanced, and how proposed new features could work")

### Features

> ℹ Important things to note:
> 
> - This theme component only works with the site setting `desktop category page style` set to `boxes with subcategories` (as it replaces that category page template).
> 
> - The category collapsing works using your browser’s local storage, so the collapsed state will not be remembered between different devices.

 ![category groups example](https://global.discourse-cdn.com/meta/original/3X/a/7/a75ad62a3613b128350602a7ffdf2aa6d97199fd.png)

 ![0a58432c737f278c393649e1570a7a5266a45340_2_775x414](https://global.discourse-cdn.com/meta/original/4X/2/e/6/2e6b02e57b3630ed0edc5b525fed12157b0c4336.png)

### Settings

| Name | Description |
| --- | --- |
| category groups | This is how the groups are configured. Format as: Group name: category-slug, extra-link-id, category-slug-2 (The category slug is the name of the category as it’s seen in URLs. Usually all lowercase with no spaces) |
| extra links | Extra links that can be mixed into category list. Add link ID in category\_groups setting to render |
| show on mobile | Show the collapsible category box groups on mobile |
| show ungrouped | Display a group of categories that aren’t assigned to another group |
| fancy styling | Turn on additional styling (These are some custom styles added. They stray from our defaults, so if you’re working on your own theme you may want to disable this) |
| hide muted subcategories | When enabled, a non-muted parent category will not appear under the muted section if it has a muted subcategory |

| Theme Translations | Default |
| --- | --- |
| ungrouped\_categories\_title | Other |

  

> :discourse2: Hosted by us? Theme components are available to use on our Pro, Business and Enterprise plans.

> Last edited by @tobiaseigen 2025-06-24T03:16:42Z
> 
> > **Check document**
> >
> > Perform check on document:

---

<div class="post-metadata">

### Author: ![awesomerobot](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/awesomerobot/32/142900_2.png) [@awesomerobot](https://meta.discourse.org/u/awesomerobot)
#### Post date: [September 26, 2023, 9:47pm UTC](https://meta.discourse.org/t/category-groups/200874/29 "2023-09-26T21:47:56Z")

</div>

I’ve just merged a refactor of this component. Functionality should remain the same overall, with some bug fixes.

[https://github.com/discourse/discourse-category-groups-component/pull/11](https://github.com/discourse/discourse-category-groups-component/pull/11)

Behind the scenes this uses some modernized Ember, and eliminates template overrides, which can be a little fragile as far as Discourse customizations go.

> [@Bug in Category Groups when category slugs contains dashes](https://meta.discourse.org/t/bug-in-category-groups-when-category-slugs-contains-dashes/280318/1):
>
> If i use the slug pr-and-social-media, the plugin will look for ‘pr’ ‘and’ ‘social’ ‘media’, and if it finds any of them it’ll add them to a category group.

This should be fixed now

> [@Issue with newly created categories](https://meta.discourse.org/t/issue-with-newly-created-categories/280317/1):
>
> After the update to 3.2. i find my pre-existing categories work fine but any new ones i add it has a bug with subcategories where the category groups i’ve set up are repeated inside the category with the new subcategory in all of them

This is fixed now, the groups will no longer apply to the subcategory layouts

> [@Oversized category images](https://meta.discourse.org/t/oversized-category-images/280320/1):
>
> It seems that in the `<img>` tag width and height parameters use a large value, not sure though where it’s pulled from.

I’ve updated this, so category logos should be much more normally sized now

---

<div class="post-metadata">

### Author: ![jenmck](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jenmck/32/332487_2.png) [@jenmck](https://meta.discourse.org/u/jenmck)
#### Post date: [February 19, 2024, 1:48am UTC](https://meta.discourse.org/t/category-groups/200874/38 "2024-02-19T01:48:24Z")

</div>

Is it possible to not show subcategories for a particular category? We have a category that’s organized in a particular way with nested subcategories and it’s causing the box to be quite large.

 ![image](https://global.discourse-cdn.com/meta/original/4X/a/8/7/a87de8a5dad09fe2bb32641ac252d555259f475f.png)

---

<div class="post-metadata">

### Author: ![Heliosurge](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/heliosurge/32/571810_2.png) [@Heliosurge](https://meta.discourse.org/u/Heliosurge)
#### Post date: [March 6, 2024, 6:55pm UTC](https://meta.discourse.org/t/category-groups/200874/39 "2024-03-06T18:55:03Z")

</div>

Maybe try the Category Hider in #Customization > Theme component

> [@Category Hider Theme Component](https://meta.discourse.org/t/category-hider-theme-component/181299):
>
> Hi all, I’ve created a simple theme component. I hope this could be of use for some! eyeglasses Overview This is a theme component that allows you to hide specific categories from either the hamburger menu or category boxes. thinking Why would you need this component? If your discourse website has a lot of categories and you would like to hide some from appearing in either the menu bar or on the main page, this component can be helpful. framed_picture Screenshots Preview of Hamburger Me…

---

<div class="post-metadata">

### Author: ![PeakProsperity](https://avatars.discourse-cdn.com/v4/letter/p/c57346/32.png) [@PeakProsperity](https://meta.discourse.org/u/PeakProsperity)
#### Post date: [March 28, 2024, 6:43pm UTC](https://meta.discourse.org/t/category-groups/200874/40 "2024-03-28T18:43:42Z")

</div>

Can you tell me if it’s possible to apply the category groupings to the sidebar? If not, I would like to put this in as a feature request. Thanks!

---

<div class="post-metadata">

### Author: ![gru](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/gru/32/374964_2.png) [@gru](https://meta.discourse.org/u/gru)
#### Post date: [March 31, 2024, 2:08am UTC](https://meta.discourse.org/t/category-groups/200874/41 "2024-03-31T02:08:07Z")

</div>

![image](https://global.discourse-cdn.com/meta/original/4X/4/c/6/4c60681018088c7a0e5c252a6fd247382cfb5029.png)  
There is a problem on my website, subcategories hasn’t space between them.

---

<div class="post-metadata">

### Author: ![awesomerobot](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/awesomerobot/32/142900_2.png) [@awesomerobot](https://meta.discourse.org/u/awesomerobot)
#### Post date: [April 1, 2024, 8:03pm UTC](https://meta.discourse.org/t/category-groups/200874/42 "2024-04-01T20:03:57Z")

</div>

Thanks for reporting it, an update should fix it now (fixed in [UX: include gap for subcategories by awesomerobot · Pull Request #19 · discourse/discourse-category-groups-component · GitHub](https://github.com/discourse/discourse-category-groups-component/pull/19)).

---

<div class="post-metadata">

### Author: ![awesomerobot](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/awesomerobot/32/142900_2.png) [@awesomerobot](https://meta.discourse.org/u/awesomerobot)
#### Post date: [April 1, 2024, 8:04pm UTC](https://meta.discourse.org/t/category-groups/200874/43 "2024-04-01T20:04:47Z")

</div>

> [@PeakProsperity](#):
>
> Can you tell me if it’s possible to apply the category groupings to the sidebar?

It’s not possible, the sidebar would need a bigger change in Discourse to allow for this (request noted!)

---

<div class="post-metadata">

### Author: ![gru](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/gru/32/374964_2.png) [@gru](https://meta.discourse.org/u/gru)
#### Post date: [April 4, 2024, 11:32am UTC](https://meta.discourse.org/t/category-groups/200874/44 "2024-04-04T11:32:32Z")

</div>

Will be awesome if this grouping will be customizable by user, some people in our community wanted that.

Yeah, this needs a plugin, but a good idea I think

---

<div class="post-metadata">

### Author: ![MustardMan](https://avatars.discourse-cdn.com/v4/letter/m/fbc32d/32.png) [@MustardMan](https://meta.discourse.org/u/MustardMan)
#### Post date: [June 27, 2024, 8:39pm UTC](https://meta.discourse.org/t/category-groups/200874/45 "2024-06-27T20:39:12Z")

</div>

Any idea why the category width is so skinny? Is there a way to fix this?

 ![image](https://global.discourse-cdn.com/meta/original/4X/d/0/3/d0328bc021852d6a3abe7d2f25adee57b5e6140b.jpeg)

---

<div class="post-metadata">

### Author: ![awesomerobot](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/awesomerobot/32/142900_2.png) [@awesomerobot](https://meta.discourse.org/u/awesomerobot)
#### Post date: [June 28, 2024, 2:58pm UTC](https://meta.discourse.org/t/category-groups/200874/46 "2024-06-28T14:58:03Z")

</div>

is this in the Mint theme? I’ve just made a minor update that should fix it — there was a slight conflict between the CSS of that theme and this component

---

<div class="post-metadata">

### Author: ![MustardMan](https://avatars.discourse-cdn.com/v4/letter/m/fbc32d/32.png) [@MustardMan](https://meta.discourse.org/u/MustardMan)
#### Post date: [July 1, 2024, 3:20pm UTC](https://meta.discourse.org/t/category-groups/200874/47 "2024-07-01T15:20:19Z")

</div>

Yeah it was the mint, thank you

---

<div class="post-metadata">

### Author: ![Cameron\_McNabb](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cameron_mcnabb/32/423184_2.png) [@Cameron\_McNabb](https://meta.discourse.org/u/Cameron_McNabb)
#### Post date: [July 9, 2024, 7:36am UTC](https://meta.discourse.org/t/category-groups/200874/48 "2024-07-09T07:36:11Z")

</div>

How do I prevent the boxes being outlined with the category colour? I’ve tried forking it, adding css, and also changing the \<li style in the categories-groups.hbs

(Note that I am a dabbler, not a trained developer)

---

<div class="post-metadata">

### Author: ![awesomerobot](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/awesomerobot/32/142900_2.png) [@awesomerobot](https://meta.discourse.org/u/awesomerobot)
#### Post date: [July 9, 2024, 1:19pm UTC](https://meta.discourse.org/t/category-groups/200874/49 "2024-07-09T13:19:04Z")

</div>

You can add a little CSS to your theme to remove the colorful borders:

```css
.category-boxes .category-box {
  border-left: 2px solid var(--primary-low) !important;
}

```

 ![image](https://global.discourse-cdn.com/meta/original/4X/c/6/2/c6265fc825bf675d541b09887ccff5d4b5a65d2d.png)

 ![image](https://global.discourse-cdn.com/meta/original/4X/6/6/1/661a94e8a02ea5ea73307fe909be10677ea70584.png)

or if you have the “fancy styling” setting turned on:

```css
.custom-categories-groups .category-box {
    border: 2px solid var(--primary-low) !important;
}

```

 ![image](https://global.discourse-cdn.com/meta/original/4X/3/2/8/328f27fa74f03c97a70e02775900f01ae86319b2.png)

---

<div class="post-metadata">

### Author: ![Cameron\_McNabb](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cameron_mcnabb/32/423184_2.png) [@Cameron\_McNabb](https://meta.discourse.org/u/Cameron_McNabb)
#### Post date: [July 9, 2024, 11:09pm UTC](https://meta.discourse.org/t/category-groups/200874/50 "2024-07-09T23:09:45Z")

</div>

Thanks Kris,

It appears I’m having a bigger problem. For some reason, whenever I try to update the Theme component, it doesn’t pick up the changes at all. So my css was good, it just wasn’t being loaded. Not something for this thread, I’ll have a search around to see if there is something dumb I’m doing

---

<div class="post-metadata">

### Author: ![MustardMan](https://avatars.discourse-cdn.com/v4/letter/m/fbc32d/32.png) [@MustardMan](https://meta.discourse.org/u/MustardMan)
#### Post date: [July 19, 2024, 1:46pm UTC](https://meta.discourse.org/t/category-groups/200874/51 "2024-07-19T13:46:51Z")

</div>

Would it be possible to have the fancy styling boxes with a latest section below the categories? In essence I want to do that same thing that the “Modern Categories + Group Boxes” component does in the Air Theme. You can select Categories with Latest for the desktop view and latest displays below the categories.

Im trying to edit my own version of the CSS but im no expert. Would this be an easy thing to do or might it be out of my skill set?

---

<div class="post-metadata">

### Author: ![gormus](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/gormus/32/428592_2.png) [@gormus](https://meta.discourse.org/u/gormus)
#### Post date: [April 15, 2025, 12:13pm UTC](https://meta.discourse.org/t/category-groups/200874/52 "2025-04-15T12:13:56Z")

</div>

I have this use case, where we have many categories, and sub-categories that are enabled, and they make the landing page very crowded, hard to find what interests the user.

Because of this, we want to customize the Category Groups landing page in a way that it is more targeted for the users in specific interest areas (via the user-groups).

So, I propose adding a **visibility** option for each category group. If any defined, the category group would be made visible only to those user-groups enabled in its settings.

 ![The image shows an updated settings page displaying "Category Groups" with an option to edit category settings, including group headings, slugs, visibility options, and a button to save changes. (Captioned by AI)](https://global.discourse-cdn.com/meta/original/4X/f/1/d/f1d7c7bd63161dca1094717abfe646e77eae2c9a.png)

I so created a pull-request to demonstrate what I mean by all this. Please let me know what you think of this option. Would you use it? Does it apply to your Discourse site?

[https://github.com/discourse/discourse-category-groups-component/pull/51](https://github.com/discourse/discourse-category-groups-component/pull/51)

_p.s. This proposed new option should not be considered as alternative access-control. It simply controls what category groups will be visible for the logged-in user based on their group memberships. The existing permissions will still be in affect._

---

<div class="post-metadata">

### Author: ![Olle11](https://avatars.discourse-cdn.com/v4/letter/o/cdc98d/32.png) [@Olle11](https://meta.discourse.org/u/Olle11)
#### Post date: [June 1, 2025, 4:15pm UTC](https://meta.discourse.org/t/category-groups/200874/53 "2025-06-01T16:15:35Z")

</div>

Seems to not be showing after the latest Discourse updates, might need a update for this TC to work

---

<div class="post-metadata">

### Author: ![satonotdead](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/satonotdead/32/447830_2.png) [@satonotdead](https://meta.discourse.org/u/satonotdead)
#### Post date: [July 17, 2025, 2:23am UTC](https://meta.discourse.org/t/category-groups/200874/56 "2025-07-17T02:23:06Z")

</div>

(post deleted by author)

---

<div class="post-metadata">

### Author: ![satonotdead](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/satonotdead/32/447830_2.png) [@satonotdead](https://meta.discourse.org/u/satonotdead)
#### Post date: [July 27, 2026, 4:01pm UTC](https://meta.discourse.org/t/category-groups/200874/57 "2026-07-27T16:01:36Z")

</div>

It is not supposed to work in Horizon?

[Next page](https://meta.discourse.org/t/category-groups/200874.md?page=2)
