The sidebar provides quick access to important sections of your Discourse site. While users can customize their own sidebar to suit their preferences, providing a thoughtful default setup helps especially new users and visitors of your forum by making it easier for them to navigate.
This guide explains how to customize the existing sections and create additional sections in the sidebar. You will also learn which settings you can adjust to configure defaults for the user preferences related to the sidebar.
Customizing the default content of each section
Community section
The top section of your sidebar (without a visible heading) is called the “Community” section. This section is visible to all users and contains essential navigation links.
To customize this section:
- Click More in the sidebar
- Select Customize this section at the bottom of the extended menu
You can make these changes:
- Reorder links by dragging the icon
- Edit the icon, name, and link for each entry
- Add new entries to the section
Understanding default links
Some of the default links have special behaviors:
- My posts - Changes to “My drafts” when you have saved drafts
- Review - Only visible to staff and category moderators
- Admin - Only visible to users with admin permissions
Working with translations
Default links automatically display in the user’s selected interface language. However:
- Customizing a default link’s text overwrites it for all languages
- To edit text for specific languages or hidden elements like “My drafts” follow the instructions in the guide on how to customize text in Discourse.
Handling plugin-added links
Plugin-added links cannot be directly customized. To modify these links:
- Create a replacement link with your desired customizations
- Hide the original plugin link
Some links can be hidden in the settings of the plugin. For instance, the upcoming events link can be hidden by disabling the sidebar_show_upcoming_events
setting.
If no setting exists to hide the link, you can use CSS to remove it. For example, the following CSS snippet, originally shared in this topic, hides the link added by the Docs plugin:
.sidebar-section-wrapper {
li[data-list-item-name=docs] {
display: none !important;
}
}
For more details about making CSS changes to your site, see the guide about making CSS changes.
Categories section
You can configure which categories appear by default in users’ sidebars in the default_navigation_menu_categories
site setting. You can get there by:
- Clicking “Configure defaults” at the bottom of the categories section (only visible as long as no defaults are configured)
- Accessing this setting through Admin > All site settings and search for the setting
Category visibility respects user permissions - users will only see categories in their sidebar that they have permission to access, even if you include restricted categories in the defaults. If you configure only restricted categories as defaults:
- Visitors will see an empty list
- Logged-in users will see the most popular categories (same as if they had unselected all categories)
The pencil icon next to “Categories” customizes your personal view only, not the default for all users.
Tags section
You can configure which tags appear by default in users’ sidebars in the default_navigation_menu_tags
site setting. You can get there by:
- Clicking “Configure defaults” at the bottom of the tags section (only visible as long as no defaults are configured)
- Accessing this setting through Admin > All site settings and search for the setting
Tag visibility respects user permissions - tags in a hidden tag group will not appear in users’ sidebars, even if included in the defaults. If you configure only restricted tags as defaults:
- All users (including visitors) will see the most popular tags (same as if they had unselected all tags)
The pencil icon next to “Tags” customizes your personal view only, not the default for all users.
Messages section
This section appears only for users who are allowed to create personal messages. For these users, the section displays:
- Their personal message inbox
- Group inboxes for any groups they belong to
While you cannot customize the section directly, you can control who sees it using the personal_message_enabled_groups
setting. You can also influence the group inboxes by managing groups and group memberships
Threads section
The threads section appears only for users who are members of at least one chat where threading is enabled.
Channels section
The channels section displays chat channels the user has joined. Users will see this section if they belong to any of the chat_allowed_groups
. Though it will be empty until they have joined at least one channel.
You can automate channel membership through channel settings:
- Enable automatic member addition in the channel settings
- New users meeting the criteria will see the channel in their sidebar automatically
DMs section
The direct messages section shows direct chat conversations between users or with groups. To see this section, users must belong to any of the chat_allowed_groups
.
Users who don’t belong to a group that is allowed to send direct messages (direct_message_enabled_groups
):
- Can see messages they have received
- Cannot initiate new conversations
You cannot configure default conversations for this section.
Adding a custom section
You can create additional sections in the sidebar that contain custom links. These will appear below the first section and above the categories section. To add a new section:
- Click the + button at the bottom of the sidebar
- Enter a title for your section
- For each link you want to add:
- Select an icon
- Enter a name for the link
- Specify the destination URL
- Click “Add another link” to add more links
- Check “Visible to everyone” to make this section appear for all users
- Click “Save” to create the section
Customizing text labels
You can customize all text labels in the sidebar, including section headings:
- Navigate to Admin > Appearance > Site texts
- Search for the text you want to customize
Since many sidebar labels use common words, finding the specific text key can be challenging. To help with this:
- Use the verbose localization feature to identify the correct text key
Customizing user preference defaults
Users can customize their sidebar preferences at /my/preferences/navigation-menu
. You can set the defaults for these preferences using the following site settings:
default sidebar link to filtered list
This setting controls whether sidebar links to topic lists (including “All Topics” and links in Categories and Tags sections) lead to:
- When enabled: Lists filtered to show only unread or new topics
- When disabled: Lists including all topics
default sidebar show count of new items
The setting controls how new items are shown in the sidebar:
chat separate sidebar mode
When enabled, a chat or forum button is added to the navigation menu. This allows users to switch between a full-screen chat experience and the forum view more efficiently. In full-screen chat mode, only chat-related sections (such as My threads, Channels, and DMs) are shown in the sidebar. If set to “always”, chat-related sections in the sidebar are hidden while browsing the forum. This setting helps keep the forum and chat experiences clearly separated.
There is a default_sidebar_switch_panel_position
site setting which allows you to decide whether the toggle button should be shown at the top or bottom of the sidebar. Users cannot change the position in their preferences.
Further customization
You can further enhance the sidebar on your forum using theme components. To explore available options, search for topics in the Theme component category tagged with sidebar (link).
Theme components can add functionality to your sidebar. Some examples include:
- Components that indent subcategories, such as:
- Components that allow you to show or hide specific sections for different user groups, such as visitors or staff:
When implementing advanced features remember that users can customize their sidebar. Test how your customizations appear with different user selections. For example how nested categories look when users add a subcategory but not its parent.