Advanced Sidebar Menu


Uses the parent/child relationship of your pages or categories to generate menus based on the current section of your site. Simply assign a page or category to a parent and this will do the rest for you.

Keeps the menu clean and usable. Only related items display so you don’t have to worry about keeping a custom menu up to date or displaying links to items that don’t belong.

Want more options and better support?

Go Pro!

Included page options:

  1. Add a title to the widget
  2. Include the highest level parent page
  3. Include the highest level parent page even with no Children
  4. Order Pages By (date, title, page order)
  5. Use built in styling (very plain styling currently but plans for more advanced in near future versions)
  6. Exclude pages
  7. Legacy Mode – For those who like the way it was pre version 4.0
  8. Always display child Pages
  9. Number of levels of child pages to display

Included category options:

  1. Add a title to the widget
  2. Include Parent Category
  3. Include Parent Even with no Children
  4. Use Built in Styling
  5. Display Categories on Single Posts
  6. To display each Single Posts Category in a new widget or in same list
  7. Exclude Categories
  8. Always display child categories
  9. Levels of Categories to display

Templates may be overridden for customization of outputs and/or css.

Many built in filters for altering the way the widgets function.

Developer docs may be found here

To contribute send pull requests:
GitHub Repo


  • Screenshot of the Page widget and options
  • Screenshot of the Categories widget and options


Developer docs may be found here:

Installation Instructions

Use the standard WordPress plugins search and install feature.

Manual Installation

  1. Upload the advanced-sidebar-menu folder to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Drag the “Advanced Sidebar Pages Menu” widget or the “Advanced Sidebar Categories Menu” widget into a sidebar.
What text domain do I use for translation and where is the .pot file?

The .pot file may be found in the plugins’ languages folder. Use the ‘advanced-sidebar-menu’ text domain.

How do I change the styling of the current page?

You may add css to your theme’s style.css to change the way the menu looks

For Instance This would remove the dot and change the color

.advanced-sidebar-menu li.current_page_item a {
    color: black;

.advanced-sidebar-menu li.current_page_item {
    list-style-type:  none !important;
How do you get the categories to display on single post pages?

There is a checkbox in the widget options as of version 3.2 that will display the same structure for the categories the post is in.

How do you edit the output or built in css?

Create a folder in your child theme named “advanced-sidebar-menu” copy any of the files from the “views” folder into
the folder you just created. You may edit the files at will to change the output or css.
You must have the option checked to use the built in CSS (in the widget) to be able to edit the css file in this way.

Does the menu change for each page you are on?

Yes. Based on whatever page you are on, the menu will change automatically to display the current parents and children.

How does this work with styling the page?

This will automatically generate class names for each level for menu system.
You can add classes to your theme’s style.css file to style it accordingly.
You may want to use something like margins to set the levels apart.


Works perfectly – what a timesaver!

The private intranet sites I’m working on have more than 600 – 700 pages organized into 8 sections, with varying access privileges to logged in users. We needed an auto-generated sidebar navigation panel listing all the pages within each section, with sub-sections.

I’ve been working thru tedious iterations of building various extensive custom menus per section, site-maps, dynamic sidebars and widgets…all ending up being a waste of time & resources compared to the ease, efficiency & functionality of this plug-in! I installed this plug-in on a dev site that has 400 pages and 5 sections – worked right ‘out-of-the-box’. Every page in each section has a custom sidebar list of parent/child/grand-children/etc sections with ALL the page links…with a single click! Impressive – and the last piece of the navigation puzzle we needed.

We have now bought the Pro version – unlimited site usage, one time fee – a total no-brainer, since the free version is so well built and simple to set up. Congratulations on the ONLY viable navigation plug-in solution for page-centric Word Press sites! Only wish I’d found this plug-in 2 months ago when I started trolling for better navigation solutions!

does nothing

Basic version does nothing, nothing works, definitely I think the fact that I would not buy PRO

Putting Good Time In

The plugin hit 200,000 downloads this week. Super excited about this milestone. So excited in fact that I have delegated more resources to development and support of this plugin.
This week has already some great improvements to the category widget as well as overall code structure to allow future enhancements. 1 medium release and 3 minor releases already live.
Stay Tuned for a bright future with this plugin!

Fantastic !! What a relief !!


Thank you very much for this plugin!
I have been messing for days untill I finally asked myself the right question, wrote it in google, and found your plugin !!!
It hasn’t been tested with my version of WP yet, but I’ll keep you posted.
At the moment it works a treat !!!
(Yes I’m very happy 🙂 )

kind regards,
Witte Mus
(White Sparrow)

Read all 18 reviews

Contributors & Developers

“Advanced Sidebar Menu” is open source software. The following people have contributed to this plugin.




  • Improve sorting of categories


  • Improve page list view
  • Add advanced_sidebar_menu_list_pages_args filter


  • Remove legacy template support
  • Restructure plugin
  • Introduce ‘advanced_sidebar_menu_template_part’ filter


  • Convert query over to get_posts() to allow for more extendability
  • Implement object caching to improve performance for environments using external object caches
  • Begin modernizing the naming conventions of methods and improving PHPdocs


  • Greatly improved performance
  • Improved code structure


  • Added Internationalization (I18n) support


  • Added support for Pro Version


  • Improved filter structure to allow for add-ons to work more effectively


  • Added a has_children class to page links with hidden children


  • Added many filters into the category widget for things like taxonomies, parent category, display on override, order by, and much more. There is no UI support for any of this yet, but developers may now tap into this.


  • Added Order By Selection in Page Widget


  • Added support for an unlimited number of page levels
  • Change structure slightly for future enhancements
  • Added Legacy Mode for backwards compatibility


  • Added filter support for custom post types


  • Added unlimited number of levels displayed once on the grandchild level of pages


  • Added the ability to have a widget title
  • Redesigned the entire structure to prepare for future changes


  • Bugfixes


  • Fix a bug that caused multiple category list to display of more than one category the single post was in shared the same parent


  • Fix a possible bug that may display a * Notice * error if there is nothing to display and the error reporting is set to strict when using the categories widget.


  • Added ability to have categories show on single post pages
  • Improved the code structure




  • Added a categories menu widget with the same functionality as the pages widget
  • Added the ability to edit “views” files through your child theme to edit output and css
  • Cleanedup the output