question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Define custom, hierarchical navigation menus

See original GitHub issue

Is your proposal related to a problem?

Navigation is a critical part of content management/architecture. However, while Wagtail provides an excellent framework for defining and managing content types, there is little support for allowing content editors to work with site navigation.

Wagtail, confusingly, has a “Show in menus” checkbox when creating pages while there is no meaningful way to define or manage the menus.

image

Describe the solution you’d like

I want to define and modify one or more hierarchical navigation menus through the Wagtail Admin UI. For example, a developer might define the navigation menu identifiers or template region in advance to render navigation menus in the correct place.

Describe alternatives you’ve considered

I’ve used the wagtailmenus plugin, which seems to no longer be maintained.

Additional context

Navigation is a first-class concern with popular CMS solutions like WordPress and Drupal.

Issue Analytics

  • State:open
  • Created 2 years ago
  • Reactions:4
  • Comments:8 (5 by maintainers)

github_iconTop GitHub Comments

2reactions
lb-commented, May 21, 2022

We have been discussing this with some of the core team and there is agreement that it would be nice, long term, for Wagtail to provide more help with managing menus. However, that does not mean that there will be a focus for this to be built any time soon.

Menu management does seem like a pretty basic feature of most content management systems, and Wagtail’s show_in_menus makes it seem like Wagtail intends to have some support for generating menus.

Here is the suggested way forward

  • Better documentation about the intention behind show_in_menus – in particular the fact people are expected to write a fair bit of code to use it. Maybe document how to hide it for sites that don’t use it.
  • A reference documentation about how to build a basic menu that leverages show_in_menus along with recommending alternatives such as wagtailmenus.
  • Another approach is that show_in_menus no longer gets added to the default PromotePanels by default, this could be added back in for those that use it and may work to avoid confusion for new Wagtail developers alongside new Wagtail users who see the field and expect it to do something that has not been built.

This is not really an answer along the lines of ‘yes this will be built’ but gives some options for smaller steps towards an eventual core implementation if that makes sense in the future.

We would love any feedback on the ideas above and of course anyone that wants to contribute towards these steps is welcome to.

1reaction
janbaykaracommented, Jun 22, 2022

I think if menus are on the roadmap now, but aren’t yet implemented, then hiding the ‘show_in_menu’ option and defaulting it to ‘True’ might be good enough for now.

I wonder if wagtail could take ownership of the wagtailmenus repo, like it has with wagtail-localize, because as per https://github.com/jazzband/wagtailmenus/issues/409 an a named lead maintainer has not been identified yet, even if Jazzband has nominally taken on the task.

Read more comments on GitHub >

github_iconTop Results From Across the Web

The Essential Guide to Website Navigation [Types & Top ...
On a website, a navigation menu is an organized list of links to other web pages, ... Here's a look at an example...
Read more >
How to Create Multilevel Hierarchical Menus in WordPress?
In today's video tutorial you'll learn how to create a multilevel hierarchical navigation menu in your WordPress website for free, ...
Read more >
How to create Multilevel / Hierarchical menus in WordPress
You can access the WordPress Menu System by logging into your WordPress dashboard, and navigate to Appearance -> Menu. Set the screen Options....
Read more >
How to Improve Website Navigation (Examples and Why You ...
Hierarchical navigation means that the menus change depending on the context of each page. Most newspapers and purely content-based websites ...
Read more >
Managing Site Navigation - Learn — Liferay
The hierarchy as displayed on Site Builder → Pages menu is the main reference for the organization of pages on that Site. While...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found