LoginRegisterCommercial SupportContact Us

Plug-in Web Applications > SimpleMenu


posted on 11:18 AM, May 28, 2008
SimpleMenu generates context-sensitive menus and site maps in various formats.

SimpleMenu is a multi-purpose menu-builder for ExSite websites. It will create context-specific menus on any web page in a site. Context-specific means that the site navigation links will reflect the current location in the site.

SimpleMenu can build four types of menus:

navigation links are stacked in a vertical list, with submenus exploded within this list. This is the default menu type.
navigation links are listed left-to-right, with each link separated by a ``|'' (bar) character. Only the top-level links in the site are shown, and no submenus are displayed.
the path from the site home page to the current page is displayed in the ``cookie crumb'' format, ie. page1 > page2 > page3
the full site structure is shown, with child pages indented beneath their parents.

By default, SimpleMenu builds complete menus, which means it begins from the top menu level of the site. You can optionally instruct it to display sub-menus. A sub-menu display can have either of the following behaviours:

  1. If there is no sub-menu below the current page, nothing is shown.
  2. If there is no sub-menu below the current page, then show the menu level above that (ie. the menu level that the current page is on). This ensures that a menu is always displayed.
Vertical and horizontal format menus are typically placed into templates.  Sitemaps are typically placed into page bodies.  Path menus are often used in either case.

Changing Navigation Structure

The SimpleMenu control panel provides an easy drag-and-drop interface for configuring your menus.  Pages are set up in a hierarchical structure, allowing you to group pages by topic.  The drag-and-drop interface allows you to:
  • move pages into different areas
  • move pages up or down within the same area
  • move groups of pages (pages plus their submens) at once
This interface is just a convenient UI for changing the parent_id and page_rank parameters of each page.  These parameters can also be modified manually using the page configuration option in MySite or the Website Manager.

One other page configuration parameters of interest is visibility.  This setting allows you to hide pages from the regular menus or site map.


By default, SimpleMenu displays only the pages within a section. If you add the following configuration setting in its config file:
show_subsections = 1

Then it will also include subsections under the current section. Subsections are listed after all pages, and in the order the subsections were created. These cannot be reordered.


There are some simplistic default layout rules that define some basic markup to get your menus to display correctly. These are quite rudimentary, so you will often want to define your own markup to replace these.

Vertically-formatted menus will attempt to inline special content objects to spice up the menu presentation:

This content will be placed before all menu links.
This content will be placed between all menu links.
This content will be placed after all menu links.

Using these content objects, a template can incorporate custom table layouts, border graphics, and other visual tricks to lay out the menu.

You can do the same thing with horizontally-formatted menus, using content objects named SimpleMenuTopH, SimpleMenuMidH, and SimpleMenuBotH.

Otherwise, the default markup can be specified in the SimpleMenu.conf configuration file.

In addition to your own markup, SimpleMenu outputs links/anchors with a CSS class of "menu". You can make use of this in your stylesheets to produce a range of styling effects.

More SimpleMenu documentation here: SimpleMenu2

Related plug-ins:  DMenu.