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.
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.
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:
SimpleMenu2
Related plug-ins:
DMenu.