Skip to main content
Best Answer

Managing Menu

  • July 14, 2026
  • 10 replies
  • 207 views

Forum|alt.badge.img+1

Hi everyone,

I am looking for some advice on how others have approached this in Docebo.

I have created a dedicated landing page/catalog for each product group, and users access these pages from a central landing page using custom widgets. Visibility is controlled through branches.

The challenge I'm running into is that each landing page also needs to be added to the menu. If I remove a page from the menu, users get a 403 Forbidden error when they try to access it from a widget, even though the link itself is correct.

As we continue to add more product groups, the menu is getting longer and longer, even though I don't actually expect users to navigate using the menu. I would prefer them to use the central landing page instead.

Has anyone found a cleaner way to handle this?

  • Is it possible to keep a page accessible through a widget or direct link without displaying it in the menu?

  • How do you manage navigation when you have lots of product-specific landing pages?

  • Are there any best practices for keeping the menu clean while still controlling access?

Thank you.

Best answer by sjennings78

We use a few “hidden” menus to set visibility so we don’t have to include all of the pages within the actual menu that we want user to see.  For example, we have a Hidden Employee menu that we add all employee-facing pages to, but then we have our actual Employee menu where we only add their actual Home page and other pages we want them to see within the menu. 

Set the visibility of the hidden menu to be the same, but make sure you have your “real” menu listed higher in the menu list than your hidden one (I’d suggest putting all “hidden” menus at the very bottom of the list on the Menu page so that no one ever actually gets assigned to that menu.

10 replies

caitlin
Novice III
  • Novice III
  • July 14, 2026

Hi! Check out this post. Be sure to also read the pinned reply about creating the hidden menu. The Power of Hidden Pages | Community


lrnlab
Hero III
Forum|alt.badge.img+10
  • Hero III
  • July 14, 2026

Hi ​@ponnammal.sundaram Sounds link you might benefit from using a Hidden Menu

Also note that if you change any links on a single page that is destined for a specific audience, you will likely need to build a new menu for each as only the menus have visibility rules. Also make sure that the order of the menus on the admin page is carefully tested since Docebo assigns menus starting from the top down; the first to match the user’s attributes is where the user lands.


ecc22
Novice II
Forum|alt.badge.img+1
  • Novice II
  • July 14, 2026

I have divided pages into two menus before, one for navigation and one for visibility. If the navigation menu is the one higher up on the list, that is the one users will see in their sidebar, but because they’re included in the visibility group for the lower level “menu”, that will provide them the access they need for any sub pages without cluttering their main navigation experience. This will clutter your admin experience with double the number of menus to manage on the back end since you’ll need one for navigation and one for visibility for each targeted group, but it will definitely improve the user experience. 


Forum|alt.badge.img

It’s rough. I have the same problem.

  1. No. Tried it. It has to be in the menu. You can put the item at the bottom.
  2. I use a dedicated “How to navigate” page at (second from the) top of every menu that provides some basic guidance for users looking. I also use HTML widgets on each product page that have links to preset filtered pages that I can add a description to for clarity.
  3. I use specific codes for each menu to tell me at a glance what combination of products is included on each page. e.g. A single product may be A, where two may be A-B, and so on.

 


Forum|alt.badge.img+3

Hi ​@ponnammal.sundaram 

To make a page accessible via a direct link, it must be included in at least one menu. If you don't want those pages to appear in your live navigation, you can create a hidden menu and add the required pages there instead.

Once the pages are assigned to the hidden menu, direct links and widget links will work as expected, while keeping your main navigation clean.

Hope This will help you to play around. 


kkovac
Novice II
Forum|alt.badge.img+1
  • Novice II
  • July 14, 2026

I have divided pages into two menus before, one for navigation and one for visibility. If the navigation menu is the one higher up on the list, that is the one users will see in their sidebar, but because they’re included in the visibility group for the lower level “menu”, that will provide them the access they need for any sub pages without cluttering their main navigation experience. This will clutter your admin experience with double the number of menus to manage on the back end since you’ll need one for navigation and one for visibility for each targeted group, but it will definitely improve the user experience. 

Came here to say the same! 👍


sjennings78
Guide III
Forum|alt.badge.img+8
  • Guide III
  • Answer
  • July 14, 2026

We use a few “hidden” menus to set visibility so we don’t have to include all of the pages within the actual menu that we want user to see.  For example, we have a Hidden Employee menu that we add all employee-facing pages to, but then we have our actual Employee menu where we only add their actual Home page and other pages we want them to see within the menu. 

Set the visibility of the hidden menu to be the same, but make sure you have your “real” menu listed higher in the menu list than your hidden one (I’d suggest putting all “hidden” menus at the very bottom of the list on the Menu page so that no one ever actually gets assigned to that menu.


kbrink1
Influencer I
Forum|alt.badge.img+3
  • Influencer I
  • July 14, 2026

Like many others in this discussion, our organization uses both customized menus and hidden menus to support branches that need their own unique default pages. Each branch receives its own custom menu, and its default landing page is tailored specifically to that branch.

In addition to these branch‑specific menus, we also use hidden menus that support the flow of our programs. For example, one branch has a custom landing page with menu options that link to several branch-specific programs, such as their Job Shadow program. When users select the Job Shadow option from the main menu, they’re taken to a Job Shadow page that contains multiple additional pages. These deeper pages are accessible through hidden menus and direct links embedded as buttons on the pages, allowing us to build a structured, programmatic experience without overwhelming the primary branch menu.

This combination of custom and hidden menus gives us the flexibility to support unique branch needs while still organizing complex program content in a clean and scalable way.


Moshe.Machlav
Helper III
Forum|alt.badge.img+2

Hi ​@ponnammal.sundaram ,

Everyone above is absolutely spot on regarding the technical fix for the 403 error—using a "Hidden Menu" (a secondary menu assigned to users but placed lower in your menu priority list) is the classic Docebo workaround to grant page access without cluttering the visual sidebar.

However, before you build out a massive hidden menu architecture, it might be worth challenging the setup itself.

In organizations I've worked with where product lines or user groups are constantly expanding, maintaining a dedicated landing page (and managing the corresponding hidden menus) for every single product group quickly becomes an administrative bottleneck. It’s tough to scale and leaves a lot of room for error when updates are needed.

Instead of managing visibility at the Page level, consider managing it at the Catalog level using a single unified landing page.

Here is what that looks like in practice:

  1. Consolidate: Create one highly polished central landing page assigned to your main menu.

  2. Widgets: Instead of using custom HTML/Image widgets that link out to sub-pages, use the Catalogs Widget (or Channels Widget).

  3. Permissions: Apply your Branch/Group visibility rules directly to the Catalogs rather than the pages.

When a user logs in and views that single landing page, Docebo's native permissions will dynamically filter the widget. They will only see the product catalogs they are authorized to view.

You deliver a completely clean, personalized navigation experience for the user, and as an Admin, you only have to maintain one page and one menu moving forward.

Hidden menus are great for specific structural needs, but for scalable product group management, letting catalog permissions do the heavy lifting will save you hours of backend management!


Forum|alt.badge.img+1

Thank you everyone for your suggestions.

The hidden menu approach solved the issue perfectly. I created a separate hidden menu with the same branch visibility, moved the product landing pages there, and was able to remove them from the visible navigation. Users can still access the pages through the widgets, and the menu is now much cleaner.