The StyleMenu module offers flexible and completely designable navigation elements for the DotNetNuke cms system based on cascading style sheets whitout any javascript or table layout needs. The menu rendering depth and the menu parent element can be specified to allow main- and submenu navigation for example.
It is also possible to render certain menu branches only; With this appraoch you can build multilanguage portals by seperating the menu entries for each language under a seperate menu branch and use different page skins to 'filter' the appropriate language. Another use case is to host different portals this way to share the same user base across the portals - users can login using their same username/password to access different/related sites.
The Login works with DotNetNuke 3.*, 4.0.* and 4.*. Seperate versions compiled against .Net 1.1 and .Net 2.0 are available.
General module installation instructions for the DeltaMind BusinessPack modules are described in the PAModuleInstallation or SourceCodeInstallation section. Additional web.config entries are not required.
The module is shown after inserting it to a pane, e.g. ContentPane (like adding any other module). It can be also used as a skin control:
<%@ Register TagPrefix="dnn" TagName="DNNSTYLEMENU" Src="~/DesktopModules/dnnStyleMenu/dnnStyleMenu.ascx" %>
...
<dnn:DNNSTYLEMENU runat="server" id="dnnStyleMenu" SubMenuDepth="0" ParentNode="118" />
The design of the menu can be fully customized by the use of CSS, since it uses a nested layout of HTML ul elements with unique ids. By default, the module CSS in the folder ~/DektopModules/dnnStyleMenu is used, this can be edited here, or can be cleared and added elsewhere, e.g. in addition to the style definitions in the skin.css.
When no ParentNode="xyz" is specified, the whole menu tree is rendered. The use of ParentNode makes sense, especially in multi language portals; the english menu and content is aligned below an EN node for example, where the German menu is located underneath the DE menu node. Using two skins, each pointing to its own parent node, allows a fully localized DotNetNuke usage (with the same userbase shared across both languages - in contrast to 2 different portals for each language).