Plug-in Web Applications > SimpleMenu
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:
- vertical
- navigation links are stacked in a vertical list, with submenus exploded within this list. This is the default menu type.
- horizontal
- 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.
- path
- the path from the site home page to the current page is displayed in the ``cookie crumb'' format, ie. page1 > page2 > page3
- sitemap
- 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:
- If there is no sub-menu below the current page, nothing is shown.
- 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.
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
One other page configuration parameters of interest is visibility. This setting allows you to hide pages from the regular menus or site map.
Subsections
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.
Layout
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:
- SimpleMenuTop
- This content will be placed before all menu links.
- SimpleMenuMid
- This content will be placed between all menu links.
- SimpleMenuBot
- 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.
Related plug-ins: DMenu.