History: Module menu
Source of version: 17 (current)
Copy to clipboard
! Module menu Starting in ((Tiki7)), there is a dedicated menu module. You can use it in a wiki page with this syntax: {CODE()}{module module="menu" structureId=1}{CODE} where structureId is the ID of the structure. You can find the id of the node (or subnode) of the structure that you want to start the menu with, when you visit the page to edit a structure. Each page of the structure has a page_ref_id number associated with it. This is the ID that you can place in the param structureId of the module. Before the existence of the Module menu, you had to create the menu this other way, instead, in a custom module: {CODE()}{menu id=43 css=y type=horiz toLevel=0}{CODE} !! Parameters {pluginmanager module="menu"} !! Example based on Structure (sub)tree Imagine that we have this structure defined in our Tiki: {CODE()} Introduction Methodology Design of Experiment Wet Lab work Data processing work Statistics work Results Discussion Bibliography {CODE} Those pages, once created the structure, will receive and Id number (page_ref_id param). {img src="display966" link="display968" width="400" rel="box[g]" imalign="center" desc="Click to expand" align="center" styleimage="border"} The homepage of the structure has page_ref_id=6. If we added that number to the module menu Structure Id param, the full structure tree would be used for the menu. If we use another page_ref_id, from a subtree of the structure (like page_ref_id=8, for the subsections of "Methodology"), then that subtree would be used to create the menu. {img src="display967" link="display968" width="400" rel="box[g]" imalign="center" desc="Click to expand" align="center" styleimage="border"} Once saved, the menu would display its links dynamically: {img src="display968" link="display968" width="400" rel="box[g]" imalign="center" desc="Click to expand" align="center" styleimage="border"} If we add new pages to that structure subtree, they would show up automatically as links in the menu also. !! Making menus look good !!! For top-right horizontal menu # Use the module menu in the "top" section with the following parameters: ** id= (put the ID of the menu you want there) ** type=horiz ** css=y ** menu_id=secondary_site_menu ** menu_class=box-secondary_site_menu ** nobox=y !!! The second-level horizontal menu # Use the module menu in the "topbar" section with the following parameters: ** id= (put the ID of the menu you want there) ** type=horiz ** css=y ** menu_id=tiki-top ** menu_class=clearfix ** nobox=y !!! Using CSS option (instead of bootstrap) so the sub-level menu open where there is room. If you use a CSS menu instead of the default bootstrap in the footer (for example, a horizontal one there when there's no left column on the page), then the dropdowns will slide upward to stay in view. #Sample using a module menu in the "bottom" section with thre following parameters: ** id= (put the ID of the menu you want there) ** type=horiz ** bootstrap=n ** css=y !!! Bottom menu sub-level that dropup (slide up) and instead of dropdown (slide down) On admin-modules, under the menu or for other dropdown-containing module's you can go to "Appearance" tab, add "dropup" for the "custom class" option. !! Comparison with other modules What is better with the "module menu" compared to the "module wikistructuremenu", is that the "module menu" you can use for horizontal and vertical menus, whilst the "module wikistructuremenu" works only vertically. !! Example See: http://projekte.go-man.eu/Dokumentationen The main horizontal navigation menu in the top bar, that you can see aswell on the one column HomePage, is a "module menu" with a "standardly assigned menuId". Each of the topnavigation items link to a wikistructure startpage, each assigned to an appropriate category. There is a second horizontal menu - not in the topbar, but in the pagetop. This is the same menu than lefthandside, so it is a wikistructuremenu - but this one is made with the "module menu" (instead of the lefthand ones, which are said to be "modules wikistructuremenu"). So you see that a wikistructure menu works with the "module menu" aswell. If the menu should be restructured - mostlikely the new pages autoposition in the menu does not fit exactly - somebody with permission to admin the structure has to move up and to deprecate or to promote the page in the structure - that is done only with arrows up/down/left/right In the admin area of the specific structure, you also can add (or delete) pages to this structure and depending of the settings regarding autocategorisation, these added pages also appear in the menu automagically (if a structured page would not be in the structures category, the menu would disappear). This way, you do not need to give any editor the task and/or permission to edit menus. The moving of pages in the structure is such time-un-consuming, that a few people with permissions on structure administration might be enough and this might not necessarily a permission for all editors. {include page="Module and Plugin Includes" start="startinclude1" stop="stopinclude1"} Alias names for this page: (alias(MenuModule)) | (alias(ModuleMenu))