JD T3 Framework/Navigation

From JoomlArt Wiki

(Difference between revisions)
Jump to: navigation, search
(Grouping menu items)
(Additional Class)
(24 intermediate revisions not shown)
Line 5: Line 5:
|}
|}
[[image:T3_logo_light.png]]<br /><br />
[[image:T3_logo_light.png]]<br /><br />
-
 
-
<span style="color:red; font-style:italic;">This section is under construction. Please come back later.</span><br /><br />
 
=Introduction=
=Introduction=
Line 29: Line 27:
* how to load module blocks as menu items.
* how to load module blocks as menu items.
-
At the end of this section you can find a complete parameter reference.<br />
+
At the end of this section you can find a complete [[JD_T3_Framework/Navigation#Parameters_reference|parameter reference]].<br />
If you need a hand understanding the basics of Drupal Menu Management, please refer to [http://api.drupal.org/api/group/menu Menu Management Reference].<br />
If you need a hand understanding the basics of Drupal Menu Management, please refer to [http://api.drupal.org/api/group/menu Menu Management Reference].<br />
Line 51: Line 49:
Allowed extension is '''.png''' and please use 16x16 pixels icons to avoid layout breaks.<br />
Allowed extension is '''.png''' and please use 16x16 pixels icons to avoid layout breaks.<br />
-
Next, in the administration section of your website, please navigate to <span style="font-weight:bold; color:green;">Menus</span> - <span style="font-weight:bold; color:green;">JD Links</span>, and then click the '''Edit''' link for <span style="font-weight:bold; color:green;">Home</span> menu item to add an appropriate icon for it.<br />
+
Next, in the administration section of your website, please navigate to <span style="font-weight:bold; color:green;">Site building - Menus</span> - <span style="font-weight:bold; color:green;">JD Links</span>, and then click the '''Edit''' link for <span style="font-weight:bold; color:green;">Home</span> menu item to add an appropriate icon for it.<br />
[[image:JD-Megamenu-userguide-icons.gif]]<br />
[[image:JD-Megamenu-userguide-icons.gif]]<br />
* '''Step 1''' - Find the '''Menu Image''' parameter and select your desired icon for <span style="font-weight:bold; color:green;">Home</span> menu item;
* '''Step 1''' - Find the '''Menu Image''' parameter and select your desired icon for <span style="font-weight:bold; color:green;">Home</span> menu item;
Line 63: Line 61:
=Editing additional menu parameters=
=Editing additional menu parameters=
==Grouping menu items==
==Grouping menu items==
-
When you enable Mega Menu for the first time, menu items will use no parameter setting, therefore it will show up similar to all other menu systems:<br />
+
When you enable Mega Menu for the first time, menu items will use no parameter setting, therefore it will show up similar to CSS Menu Systems:<br />
[[image:JD-Megamenu-userguide-column-params.gif]]<br /><br />
[[image:JD-Megamenu-userguide-column-params.gif]]<br /><br />
Line 72: Line 70:
We are going to edit each one of them, as we need to show up their child menu items or child content along with these parent items. We are going to click the '''Edit''' link for <span style="color:green;font-weight:bold">Layout</span> menu item to edit it.<br />
We are going to edit each one of them, as we need to show up their child menu items or child content along with these parent items. We are going to click the '''Edit''' link for <span style="color:green;font-weight:bold">Layout</span> menu item to edit it.<br />
-
[[image:JD-Megamenu-userguide-enable-column.png]]<br />
+
[[image:JD-Megamenu-userguide-enable-column.gif]]<br />
As you see in the image above, just by selecting <span style="color:red;font-weight:bold">Yes</span> for the <span style="color:red;font-weight:bold">Group</span> option will group the <span style="color:green;font-weight:bold">Layout</span> menu item with it's child menu items into a compact column, and the parent menu item <span style="color:green;font-weight:bold">Layout</span> becomes the head of the first column of the main menu item <span style="color:green;font-weight:bold">Explore</span>. Now we can do the same thing for the other two parent menu items: <span style="color:green;font-weight:bold">Menu Showcase</span> and <span style="color:green;font-weight:bold">Vimeo</span>.<br /> <br />
As you see in the image above, just by selecting <span style="color:red;font-weight:bold">Yes</span> for the <span style="color:red;font-weight:bold">Group</span> option will group the <span style="color:green;font-weight:bold">Layout</span> menu item with it's child menu items into a compact column, and the parent menu item <span style="color:green;font-weight:bold">Layout</span> becomes the head of the first column of the main menu item <span style="color:green;font-weight:bold">Explore</span>. Now we can do the same thing for the other two parent menu items: <span style="color:green;font-weight:bold">Menu Showcase</span> and <span style="color:green;font-weight:bold">Vimeo</span>.<br /> <br />
Line 79: Line 77:
==Setting up columns==
==Setting up columns==
-
We find a good idea to show you now the <span style="color:green;font-weight:bold">Explore</span> menu item structure. Take a closer look at the menu structure in the left side and the frontend view in the right side. This makes sense to edit some more menu parameters:<br />
+
We find a good idea to show you now the <span style="color:green;font-weight:bold">Explore</span> menu item structure. Take a closer look at the menu structure in the left side and the menu system view in the right side. This makes sense to edit some more Mega Menu parameters:<br />
-
[[image:JD-Megamenu-userguide-no-columns.png]]<br />
+
[[image:JD-Megamenu-userguide-no-columns.gif]]<br />
-
As we marked the columns, we have to change the <span style="color:green;font-weight:bold">Explore</span> menu item parameters to show up properly it's child menu items in frontend, so let's click this menu item and customize it:<br />
+
As we marked the columns, we have to change the <span style="color:green;font-weight:bold">Explore</span> menu item parameters to show up properly it's child menu items, so let's click the '''Edit''' link for this menu item and customize it:<br />
-
[[image:JD-Megamenu-userguide-megamenu-parameters.png]]<br />
+
[[image:JD-Megamenu-userguide-megamenu-parameters.gif]]<br />
-
* '''Step 1''' -  
+
* '''Step 1''' - Set the columns number to three, it will apply for each menu item: '''1 - Layout''', '''2 - Menu Showcase''' and '''3 - Vimeo''';
-
* '''Step 2''' - add a description or a slogan for the menu item;
+
* '''Step 2''' - Add a custom width for each column to make it more visual appealing, especially for the Vimeo video player that exceeds the default column width of 200 pixels;
-
* '''Step 3''' - set the columns number to three, it will apply for each menu item: Layout, Menu Showcase and Vimeo;
+
* '''Step 3''' - Click the '''Save''' button, refresh the page and see the changes.
-
* '''Step 4''' - add a custom width for each column to make it more visual appealing, especially for the Vimeo video player that exceeds the default column width of 200 pixels;
+
-
* Click the '''Save''' button, refresh the page and see the changes.
+
<br />
<br />
-
[[image:JD-Megamenu-userguide-nice-columns.png]]<br /><br />
+
[[image:JD-Megamenu-userguide-nice-columns.gif]]<br /><br />
<span style="color:red;font-weight:bold">Please note</span> that this parameter only applies for megamenu navigation system.
<span style="color:red;font-weight:bold">Please note</span> that this parameter only applies for megamenu navigation system.
-
=Loading modules as menu items=
+
=Loading blocks as menu items=
In this section we are going to show you how to load different types of modules as menu items. Basically you can load any type of module:
In this section we are going to show you how to load different types of modules as menu items. Basically you can load any type of module:
-
* custom HTML: embedded videos, external content, advertising (Google Ads or any other affiliated adds service), community links, etc;
+
* Full HTML: embedded videos, external content, advertising (Google Ads or any other affiliated adds service), community links, etc;
-
* regular Drupal modules: login module, quick contact module, external content feeds, generally all modules you have installed in your setup;
+
* Regular Drupal modules: login module, quick contact module, external content feeds, generally all modules you have installed in your setup.
-
* you can also load unique module positions you have set for your modules, position that are not defined in your template.
+
<br />
<br />
-
<span style="color:red;">Please note</span> that child <span style="text-decoration:underline; color:green;">content</span> items will only show up for megamenu navigation system, for the others, CSS Menu, Moo Menu, Split Menu and Dropline Menu, the navigation bar will only show up menu titles.
+
<span style="color:red;">Please note</span> that child <span style="text-decoration:underline; color:green;">content</span> items will only show up for Mega Menu navigation system, for the others, CSS Menu, Split Menu and Dropline Menu, the navigation bar will only show up menu titles.
-
==Loading regular modules==
+
<div style="display:none">Loading regular modules
Just to so show you an example, we are going to load the default Drupal '''Login Module''' as a menu item, so first go to '''Menu Item Manager''' of the <span style="color:green; font-weight:bold;">Main Menu</span>. Now click the <span style="color:green; font-weight:bold;">New</span> button to add a new menu item, then proceed with the folowing steps:<br /> <br />
Just to so show you an example, we are going to load the default Drupal '''Login Module''' as a menu item, so first go to '''Menu Item Manager''' of the <span style="color:green; font-weight:bold;">Main Menu</span>. Now click the <span style="color:green; font-weight:bold;">New</span> button to add a new menu item, then proceed with the folowing steps:<br /> <br />
[[image:JD-Megamenu-userguide-item-types.png]]<br />loading....<br/>
[[image:JD-Megamenu-userguide-item-types.png]]<br />loading....<br/>
Line 122: Line 117:
[[image:JD-Megamenu-userguide-login.png]]
[[image:JD-Megamenu-userguide-login.png]]
<br /><br />
<br /><br />
 +
</div>
==Loading embedded video==
==Loading embedded video==
 +
We have shown you above a Vimeo video player as a menu item. Now we are going to explain how to do that, so first let's create a new <span style="color:green;font-weight:bold;">Full HTML</span> module. Go to '''Administer - Site building - <span style="color:green;">Blocks</span>, then click the <span style="color:green;font-weight:bold;">Add block</span> tab button. Next, please follow this quick guide:<br />
 +
[[image:JD-Megamenu-userguide-video1.gif]]
 +
* '''Step 1''' - type in a '''block description''';
 +
* '''Step 2''' - type in a '''block title''', we are going to need this later;
 +
* '''Step 3''' - paste the video embedded code inside the text area of the '''Block body''';
 +
* '''Step 4''' - select the <span style="color:green;font-weight:bold;">Full HTML</span> in the '''Input format''' section;
 +
* '''Step 5''' - scroll down and click the <span style="font-weight:bold;">Save configuration</span> button.
-
We have shown you above a Vimeo video player as a menu item. Now we are going to explain how to do that, so first let's create a new <span style="color:green;font-weight:bold;">Custom HTML</span> module. Go to <span style="color:green;font-weight:bold;">Module Manager</span>, then click the <span style="color:green;font-weight:bold;">New</span> button.<br />
+
Next, we will open '''Menu Item Manager''' for <span style="color:green;font-weight:bold;">JD Links</span>, and click the <span style="color:green;font-weight:bold;">Add item</span> tab button, then continue with the following steps:<br /><br />
-
[[image:JD-Megamenu-userguide-video1.png]]
+
'''JD Mega Menu Parameters'''<br />
-
* '''Step 1''' - type in a module name so you can recognize this module later, but select not to show this module name;
+
[[image:JD-Megamenu-userguide-video2.gif]]<br /><br />
-
* '''Step 2''' - type in a '''unique''' module position name, we are going to need this position name later;
+
* '''Step 1''' - Select ''Yes'' option for '''Group''' parameter;
-
* '''Step 3''' - click the <span style="color:green;font-weight:bold;">HTML</span> link in the editor to open the HTML Source Editor;
+
* '''Step 2''' - Select ''Blocks'' option for '''Submenu Content''';
-
* '''Step 4''' - paste the video embedded code inside the text area;
+
* '''Step 3''' - Select '''Vimeo''' module block;
-
* '''Step 5''' - click the <span style="color:green;font-weight:bold;">Update</span> button;
+
'''Standard Menu Settings'''<br />
-
* now you are going to click the <span style="color:green;font-weight:bold;">Save</span> button to save the module configuration.<br /><br />
+
-
Next, we will open '''Menu Item Manager''' for <span style="color:green;font-weight:bold;">Main Menu</span>, and click the <span style="color:green;font-weight:bold;">New</span> button in the top-right corner of your administration panel. Same as the example above, click the <span style="color:green;font-weight:bold;">Separator</span> menu item type, then continue with the following steps:<br />
+
[[image:JD-Megamenu-userguide-video3.gif]]<br /><br />
-
 
+
* '''Step 4''' - Add a path for the menu item;
-
[[image:JD-Megamenu-userguide-video2.png]]<br /><br />
+
* '''Step 5''' - Type in a '''Menu link title''';
-
 
+
* '''Step 6''' - select <span style="font-weight:bold;">Parent item</span> for the menu item;
-
* '''Step 1''' - click the <span style="color:green;font-weight:bold;">Parameters (JA Extended)</span>tab to open the megamenu parameters;
+
* '''Step 7''' - Scroll down and click the '''Save''' button.
-
* '''Step 2''' - type in a menu item title;
+
Refresh the page and see the changes.
-
* '''Step 3''' - type in an appealing slogan/description for the menu item;
+
-
* '''Step 4''' - make sure you have assigned this separator menu item to the proper parent menu item;
+
-
* '''Step 5''' - select <span style="color:green;font-weight:bold;">Yes</span> for the <span style="color:green;font-weight:bold;">Group</span> option to show the child content item (the Vimeo flash video player) along with the menu item title;
+
-
* '''Step 6''' - select <span style="color:green;font-weight:bold;">Module positions</span> option to be able to select one;
+
-
* '''Step 7''' - remember the unique module position name <span style="color:green;font-style:italic;">tube</span> we have assigned our custom module to? We are going to select it now!
+
-
* click the <span style="color:green;font-weight:bold;">Save</span> button to save the new menu item configuration, go to frontend, refresh the page and see the changes.  
+
<br />
<br />
-
The result of these changes can be viewed in the [[JA_Template_Framework/Navigation#Setting_up_columns|Setting up columns section]].
+
The result of these changes can be viewed in the [[JD_T3_Framework/Navigation#Setting_up_columns|Setting up columns section]].
<br /><br />
<br /><br />
Line 155: Line 151:
In this section we would like to build a complete reference for all T3 Navigation System Parameters. We are going to explain each parameter: functions, usage, values and examples of best practices.<br /><br />
In this section we would like to build a complete reference for all T3 Navigation System Parameters. We are going to explain each parameter: functions, usage, values and examples of best practices.<br /><br />
-
<span style="font-weight:bold; color:green;">TIP</span>: hovering your mouse pointer over each of the parameters in the menu item editing panel, basic usage instructions will pop-up and give you a hint on how to setup the parameters.<br />
+
<span style="font-weight:bold; color:green;">TIP</span>: hovering your mouse pointer over each of the parameters in the menu item editing panel, basic usage instructions will pop-up and give you a hint on how to setup the parameters.<br /><br />
-
[[image:JD-Megamenu-userguide-params-reference.png|Megamenu complete reference]]<br />
+
==Columns Parameter==
-
 
+
-
==Show the menu title==
+
-
[[image:JD-Megamenu-userguide-title.png]]<br />
+
-
Setting this parameter to <span style="color:green">No</span>, will hide the menu item title.<br />
+
-
So, for menu items from the second level or above, you might want to hide the menu title. The most important things to remember:
+
-
* the default value for this parameter is '''Yes''', meaning '''Yes, show the title''';
+
-
* you might find this useful for advertising modules, tag clouds or special external content;
+
-
* this parameter also applies to [[JA_Template_Framework/Navigation#Menu_item_description_or_slogan|description]] parameter;
+
-
* setting this parameter to '''No''', will hide the title and '''also''' other child content (menu items/modules) for a menu item;
+
-
* this parameter only applies to megamenu navigation system.<br />
+
-
This parameter is useful for menu items you don't want to show up in frontend, but you need a unique Itemid value for that menu item to be used by child content pages. Example: you want to use a menu item for user registration, but you don't want this menu item to be visible, because registered users that click this menu item while are logged in, they will get a critical error, so it is better to hide this menu item's title, as long as we have it published and passing it's Itemid value to all registration links.
+
-
 
+
-
==Menu item description or slogan==
+
-
[[image:JD-Megamenu-userguide-description.png]]<br />
+
-
A nice new feature to make your menu items appealing, interesting or just funny. What is important here to point out:
+
-
* this parameter has no default value;
+
-
* '''keep it simple''' - you don't want to break the template because of long known quotes or irrelevant information;
+
-
* '''keep it clean''' - the menu description can be applied for all of your menu items, but we find a good idea to use this feature only for the most important menu items, the menu items from the first two levels;
+
-
* this parameter applies for all navigation systems: CSS Menu, Moo Menu, Split Menu, Dropline Menu and Mega Menu.<br />
+
-
 
+
-
==Number of columns==
+
-
 
+
-
[[image:JD-Megamenu-userguide-nr-columns.png]]<br />
+
This parameter defines the number of columns needed to display child menu items of a parent menu item. There are some things you must always remember:
This parameter defines the number of columns needed to display child menu items of a parent menu item. There are some things you must always remember:
* the default value of this parameter is '''1''' (one);
* the default value of this parameter is '''1''' (one);
-
* if you have for instance 4 child menu items, you will have to set this parameter to 4 columns for the parent item of these menu items;
+
* if you have for instance 4 child menu items, you will have to set this parameter to 4 columns for the parent item of these menu items, or you can set 2 columns to have a narrowed navigation;
* you can create as many columns as you need into your navigation structure, but it is better to use columns only for the '''main''' menu items, those in your menu root, this way you will avoid template breaks;
* you can create as many columns as you need into your navigation structure, but it is better to use columns only for the '''main''' menu items, those in your menu root, this way you will avoid template breaks;
-
* this parameter is a pair parameter with [[JA_Template_Framework/Navigation#Group_option|Group option]] parameter;
+
* this parameter is a pair parameter with [[JD_T3_Framework/Navigation#Group_Parameter|Group]] parameter;
-
* this parameter only applies to megamenu navigation system.
+
* this parameter only applies to Mega Menu navigation system.
 +
<br />
-
==Group option==
+
==Group Parameter==
-
[[image:JD-Megamenu-userguide-group.png]]<br />
+
This parameter will group the parent menu item with it's child menu items to form compact columns. Remember:
-
This parameter will group the parent menu item with it's child menu items or content items to form compact columns. Remember:
+
* the default value of this parameter is '''No''';
* the default value of this parameter is '''No''';
* it only groups the parent item with it's direct child items (EG: parent from '''level 1''' with child1, child2, ... childn from '''level 2''');
* it only groups the parent item with it's direct child items (EG: parent from '''level 1''' with child1, child2, ... childn from '''level 2''');
-
* this parameter is a pair parameter for [[JA_Template_Framework/Navigation#Number_of_columns|Number of columns]] parameter;
+
* this parameter is a pair parameter for [[JD_T3_Framework/Navigation#Columns_Parameter|Columns Parameter]] parameter;
-
* this parameter only applies to megamenu navigation system.
+
* see an example [[JD_T3_Framework/Navigation#Grouping_menu_items|here]];
 +
* this parameter only applies to Mega Menu navigation system.
 +
<br />
-
==Submenu width==
+
==Submenu Width Parameter==
-
[[image:JD-Megamenu-userguide-sub-width.png]]<br />
+
This parameter will override the width of the entire child content area. Properties:
-
This parameter will override the width of the entire child content area. Some info about this parameter:
+
* this parameter has no default value;
* this parameter has no default value;
-
* this parameter must be used for parent menu items and applies to child '''content area''', no matter the [[JA_Template_Framework/Navigation#Number_of_columns|number of columns]];
+
* this parameter must be used for parent menu items and applies to child '''content area''', no matter the [[JD_T3_Framework/Navigation#Columns_Parameter|number of columns]];
* this parameter is useful for a single column of child items, especially for special advertising or different types modules having a higher width value than the default 200 pixels column width;
* this parameter is useful for a single column of child items, especially for special advertising or different types modules having a higher width value than the default 200 pixels column width;
-
* this parameter only applies to megamenu navigation system.<br />
+
* this parameter only applies to Mega Menu navigation system.
 +
<br />
-
==Submenu column width==
+
==Column Width Parameter==
-
[[image:JD-Megamenu-userguide-sub-colw.png]]<br />
+
This parameter will override the default column width of 200 pixels for all columns. So:
This parameter will override the default column width of 200 pixels for all columns. So:
* this parameter has no default value;
* this parameter has no default value;
* this parameter is used for parent menu items, and applies to '''all''' direct child items columns;
* this parameter is used for parent menu items, and applies to '''all''' direct child items columns;
* this parameter might be useful when you have relatively long menu item titles or you just want to add a distinctive look to your navigation;
* this parameter might be useful when you have relatively long menu item titles or you just want to add a distinctive look to your navigation;
-
* this parameter only applies to megamenu navigation system.
+
* this parameter only applies to Mega Menu navigation system.
<br />
<br />
-
==Specific submenu column width==
+
==Specific Column Width Parameter==
-
[[image:JD-Megamenu-userguide-spec-colw.png]]<br />
+
This parameter will override the default width of 200 pixels for one or more columns.<br />
-
 
+
-
This parameter will override the default width of 200 pixels for a specific column or more.<br />
+
* this parameter has no default value;
* this parameter has no default value;
* this parameter is used for parent menu items, and applies to specific direct child items columns;
* this parameter is used for parent menu items, and applies to specific direct child items columns;
* this parameter is very useful when you have more columns with distinctive menu item title lengths or larger images and you want to use a custom width for certain columns, just like we have done for the Vimeo video player;
* this parameter is very useful when you have more columns with distinctive menu item title lengths or larger images and you want to use a custom width for certain columns, just like we have done for the Vimeo video player;
* for each of the child items, you have to define the width using this variable: colw1 - meaning width of the first column;
* for each of the child items, you have to define the width using this variable: colw1 - meaning width of the first column;
-
* this parameter only applies to megamenu navigation system.<br />
+
* when using custom width for multiple columns, you must not use comma. Example: colw1=220 colw2=230
 +
* you can see an example [[JD_T3_Framework/Navigation#Setting_up_columns|here]];
 +
* this parameter only applies to Mega Menu navigation system.
 +
<br />
-
<span style="font-weight:bold;color:blue;">Example</span>:<br />
+
==Submenu Content Parameter==
-
*'''root_parent''' - regular Joomla! menu item,
+
===Child menu items OR None===
-
**'''child1''' - parent of other regular menu items <-> this is the first column
+
* this is the default option for the '''Submenu Content''' parameter;
-
**'''child2''' - custom module with a 200x250px banner <-> this is the second column.
+
* this option will define the menu item behavior as a regular Drupal menu item;
 +
* the significance of this option is that the menu item will load no additional content, furthermore it will not load any scripts for such actions, just like we would disable loading block modules;
 +
* using this option will produce no effect on any menu system, but switching to this option, will disable loading additional content for Mega Menu navigation system.
 +
<br />
-
For the '''root_parent''' menu item we are going to setup custom width for the second column as it's width exceeds the default 200px column width. So we are going to type in this parameter value:<br />
+
===Blocks as menu items===
 +
* using this option will allow you to load a module block by it's title, with other words if you set your module title "Latest News", this is what you are going to see here for block module selection;
 +
* this option only affects Mega Menu and enables the first method of loading block modules as menu items.
 +
<br />
-
<div style="border:1px solid #ccc; background:#f6f6f6; padding:2px 15px;width:250px;">
 
-
colw2=270
 
-
</div>
 
-
<span style="color:red;">Please note</span> that loading objects as menu items sometimes requires to use a column width of 15-20px higher value than the width of the object. We have done the same thing in this example here, to let the child content area wrap around the object.
+
===Regions as menu items===
 +
* using this option will allow you to load one or several block modules assigned to a certain region, and the select box will show you all regions defined in the Drupal theme (user1, user2, top-panel, mass-bottom, etc)
 +
* this option only affects Mega Menu and enables the second method of loading modules as menu items.
 +
<br />
-
==Additional styling class==
+
==Menu Image==
-
[[image:JD-Megamenu-userguide-class.png]]<br />
+
* This is a Joomla! feature for menu items now available for Drupal thanks to JD T3 Framework.  
-
This parameter will allow you to extend the styling for each of your menu items. Some guidelines and ideas:
+
* It allows you to set an appropriate icon for each menu item.
-
* this parameter has no default value;
+
* See an example [[JD_T3_Framework/Navigation#Adding_menu_images|here]].
-
* using this parameter you can override/extend the styling of each menu item, just by creating a special styling class, and use it as a value for this parameter;
+
* This parameter applies to all menu systems.
-
* this parameter applies to all navigation systems.
+
<br />
<br />
-
==Submenu content==
+
==Additional Class==
-
This parameter defines the behavior of a parent or child menu item in terms of loading additional content. At this moment you have three options:<br />
+
* Another common feature for both Joomla! and Drupal.
 +
* It provides an excellent way to make your menu items unique by using menu item class suffix.
 +
* Examples:
 +
** ''green_item'' class with styling .green-item {background-color:green;} - will override the default menu item background color with the one you set this way;
 +
** ''float-right'' class with styling .float-right {float:right;} - will force alignment for the menu item.
 +
** See a live demo [http://www.joomlart.com/ here].
 +
<br /><br />
-
===Child menu item===
+
<div style="-moz-border-radius:10px; border:1px solid #ccc; background:#f6f6f6;padding:1em; font-size:110%; font-weight:bold; text-align:left; width:580px;">
-
[[image:JD-Megamenu-userguide-child-menu.png]]<br />
+
<div style="float:left;margin:5px 10px 0 0;">[[image:Drupal-128.png]]</div>
-
* this is the default option for the '''Child Content''' parameter;
+
<span style="color:blue;font-style:italic;">JD T3 Framework 2.0 for Drupal Resources</span><br />
-
* this option will define the menu item behavior as a regular Joomla! menu item;
+
[[JD_T3_Framework/Overview | Overview]] | [[JD_T3_Framework/Guides | Developer Guides]] | [[JD_T3_Framework/FAQs | Customization FAQs]] | [[JD_T3_Framework/Navigation | Navigation]] | [[JD_T3_Framework/Copyright | Copyright]]<br />
-
* the significance of this option is that the menu item will load no additional content, furthermore it will not load any scripts for such actions, just like we would disable loading modules;
+
</div>
-
* using this option will produce no effect on any menu system, but switching to this option, will disable loading additional content for megamenu navigation system.
+
<br />
<br />
-
===Child module===
+
<div style="-moz-border-radius:10px; border:1px solid #ccc; background:#f6f6f6;padding:1em; font-size:110%; font-weight:bold; text-align:left; width:580px;">
-
[[image:JD-Megamenu-userguide-child-mod.png]]<br />
+
<div style="float:left;margin:5px 10px 0 0;">[[image:Joomla-128.png]]</div>
-
* using this option will allow you to load a module by it's title, with other words if you set your module title "Related news", this is what you are going to see here for module selection, so <span style="color:red">do not confuse this with <span style="font-weight:bold">mod_module-name</span></span>;
+
<span style="color:green;font-style:italic;">JA T3 Framework 2.0 for Joomla! Resources</span><br />
-
* this option only affects megamenu and enables the first method of loading modules as menu items.
+
[[JA_T3_Framework_2/Overview | Overview]] | [[JA_T3_Framework_2/Guides | Developer Guides]] | [[JA_T3_Framework_2/FAQs | Customization FAQs]] | [[JA_T3_Framework_2/Navigation | Navigation]] | [[JA_T3_Framework_2/Copyright | Copyright]]<br />
-
 
+
-
===Child module position===
+
-
 
+
-
[[image:JD-Megamenu-userguide-child-modpos.png]]<br /><br />
+
-
* using this option will allow you to load a module by it's unique position, with other words if you set your module position to "my-position", this is what you are going to see here for module position selection;
+
-
* this option only affects megamenu and enables the second method of loading modules as menu items.
+
-
 
+
-
==Parameter notes==
+
-
* these are all megamenu parameters, and two of them ('''Menu item description''' and '''Additional class''') also apply to the other menu systems;
+
-
* using the megamenu navigation system, if you set to '''No''' the '''Show the menu title''' parameter for a parent item, and '''No''' for '''Group option''' parameter for all child items of that parent item, it will hide the complete menu structure;
+
-
* before introducing the JA Menu Parameters plugin there were 2 parameters: '''left=1''' and '''right=1''', used to make the child content area of a parent item float to the left or to the right, to avoid displaying portions of the child content area outside the template wrapper, but now, if the width of the child content area is very wide, the child content is moved to the left (or right in RTL mode) just enough to display the child content properly.
+
-
 
+
-
 
+
-
 
+
-
 
+
-
<div style="-moz-border-radius:10px; border:1px solid #ccc; background:#f6f6f6;padding:1em; font-size:110%; font-weight:bold; text-align:left;">
+
-
 
+
-
<span style="color:green;font-style:italic;">Navigation</span><br /> [[JD_T3_Framework/Overview | Overview]] | [[JD_T3_Framework/Guides | Developer Guides]] | [[JD_T3_Framework/FAQs | Customization FAQs]] | [[JD_T3_Framework/Navigation | Navigation]] | [[JD_T3_Framework/Copyright | Copyright]]<br />
+
</div>
</div>

Revision as of 10:51, 30 July 2010

{{#customtitle:JD T3 Framework 2.0 for Drupal - Navigation Systems|JD T3 Framework 2.0 for Drupal - Navigation Systems}}

Contents

image:T3_logo_light.png

Introduction

JD T3 Framework comes with four menu systems:

  • Mega Menu - the most powerful menu system out there as it can load blocks, regions, and can combine vertical, horizontal and columns design to make the main navigation more friendly.
  • Split Menu - a menu system to display the sub menus vertically when a root menu item is active. The second level is displayed in a cascade style.
  • Dropline Menu - very similar to Split Menu but it has an additional ability to show sub menu items on mouse hover.
  • CSS Menu - the most popular menu system to use a simple cascade design, with no script required.


Mega Menu System was introduced with the first version of the JA T3 Framework 1.0 for Joomla! back in 2009, and now it is one of the most powerful menu system out there.
The Mega Menu system will add more flexibility for Drupal powered website navigation as it is capable to load modules as menu items and provide unlimited possibilities for the menu layout and design. Some of the features were already part of Drupal menu management like Menu Item Description and others, so now the framework uses best features for both Joomla! and Drupal.
The override feature is very similar as for the JA T3 Framework 2.0 for Joomla! and makes possible to use a certain menu system for a certain page.
This section provide a step by step guide on how to edit your main navigation (JD Links in most cases) to add more value to your website.

Basically, we are going to show you examples on:

  • how to add menu images / icons;
  • how to edit menu item parameters;
  • how to edit specific Mega Menu parameters;
  • how to load module blocks as menu items.

At the end of this section you can find a complete parameter reference.

If you need a hand understanding the basics of Drupal Menu Management, please refer to Menu Management Reference.

Editing menu items

When you install the first time a T3 Framework based template for Drupal, you will have a navigation menu system looking similar to this:
image:JD-Megamenu-userguide-menu-on-install.png
The image suggest no Mega Menu parameters used in this particular case. We are going to set more and more parameters and explain how to make it look just like the demo, but first let's check some requirements.

Checklist

In order to be able to enable the complete features list of the T3 navigation systems, you have to check:

  • you have installed the Template Engine, this holds the framework core scripts (including menu systems scripts) and basic styling.
  • you have your T3 Framework based Drupal theme set as your default theme;
  • you have set up Mega Menu as your default navigation system, so this way you can set up all your desired settings.

Please note that using JD T3 Blank theme quickstart pack do not require to follow this checklist, it is only for manual installation.

Adding menu images

To be able to add icons to your menu items, first you are going to upload your favorite icons to the your_site_root/sites/all/images folder.
Allowed extension is .png and please use 16x16 pixels icons to avoid layout breaks.

Next, in the administration section of your website, please navigate to Site building - Menus - JD Links, and then click the Edit link for Home menu item to add an appropriate icon for it.
image:JD-Megamenu-userguide-icons.gif

  • Step 1 - Find the Menu Image parameter and select your desired icon for Home menu item;
  • Step 2 - Scroll down and click the Save button located at the bottom of the administration panel to apply this change.


Now you can do the same for Typography menu item, then refresh the page and see how it looks like!
image:JD-Megamenu-userguide-with-icons.gif

Editing additional menu parameters

Grouping menu items

When you enable Mega Menu for the first time, menu items will use no parameter setting, therefore it will show up similar to CSS Menu Systems:
image:JD-Megamenu-userguide-column-params.gif

In the image above, you can see the Explore menu item having three child menu items:

  • Layout,
  • Menu Showcase,
  • Vimeo.

We are going to edit each one of them, as we need to show up their child menu items or child content along with these parent items. We are going to click the Edit link for Layout menu item to edit it.

image:JD-Megamenu-userguide-enable-column.gif

As you see in the image above, just by selecting Yes for the Group option will group the Layout menu item with it's child menu items into a compact column, and the parent menu item Layout becomes the head of the first column of the main menu item Explore. Now we can do the same thing for the other two parent menu items: Menu Showcase and Vimeo.

Please note that this parameter only applies for Mega Menu navigation system.

Setting up columns

We find a good idea to show you now the Explore menu item structure. Take a closer look at the menu structure in the left side and the menu system view in the right side. This makes sense to edit some more Mega Menu parameters:
image:JD-Megamenu-userguide-no-columns.gif


As we marked the columns, we have to change the Explore menu item parameters to show up properly it's child menu items, so let's click the Edit link for this menu item and customize it:
image:JD-Megamenu-userguide-megamenu-parameters.gif

  • Step 1 - Set the columns number to three, it will apply for each menu item: 1 - Layout, 2 - Menu Showcase and 3 - Vimeo;
  • Step 2 - Add a custom width for each column to make it more visual appealing, especially for the Vimeo video player that exceeds the default column width of 200 pixels;
  • Step 3 - Click the Save button, refresh the page and see the changes.


image:JD-Megamenu-userguide-nice-columns.gif

Please note that this parameter only applies for megamenu navigation system.

Loading blocks as menu items

In this section we are going to show you how to load different types of modules as menu items. Basically you can load any type of module:

  • Full HTML: embedded videos, external content, advertising (Google Ads or any other affiliated adds service), community links, etc;
  • Regular Drupal modules: login module, quick contact module, external content feeds, generally all modules you have installed in your setup.


Please note that child content items will only show up for Mega Menu navigation system, for the others, CSS Menu, Split Menu and Dropline Menu, the navigation bar will only show up menu titles.

Loading regular modules

Just to so show you an example, we are going to load the default Drupal Login Module as a menu item, so first go to Menu Item Manager of the Main Menu. Now click the New button to add a new menu item, then proceed with the folowing steps:

File:JD-Megamenu-userguide-item-types.png
loading....
File:JD-Megamenu-userguide-load-module.png

  • Step 1 -
  • Step 2 - select an icon for this menu item if you want;
  • Step 3 -
  • Step 4 - type in a Title for this menu item;
  • Step 5 - type in an appealing slogan/description for this menu item;
  • Step 6 - select Modules content type;
  • Step 7 - scroll down and select Login Form, this is the module we are going to load;
  • we are going to leave all other parameters untouched;
  • click the Save button and go to frontend, refresh the page, and hover your mouse over the new menu item.



File:JD-Megamenu-userguide-login.png

Loading embedded video

We have shown you above a Vimeo video player as a menu item. Now we are going to explain how to do that, so first let's create a new Full HTML module. Go to Administer - Site building - Blocks, then click the Add block tab button. Next, please follow this quick guide:

image:JD-Megamenu-userguide-video1.gif

  • Step 1 - type in a block description;
  • Step 2 - type in a block title, we are going to need this later;
  • Step 3 - paste the video embedded code inside the text area of the Block body;
  • Step 4 - select the Full HTML in the Input format section;
  • Step 5 - scroll down and click the Save configuration button.

Next, we will open Menu Item Manager for JD Links, and click the Add item tab button, then continue with the following steps:

JD Mega Menu Parameters
image:JD-Megamenu-userguide-video2.gif

  • Step 1 - Select Yes option for Group parameter;
  • Step 2 - Select Blocks option for Submenu Content;
  • Step 3 - Select Vimeo module block;

Standard Menu Settings

image:JD-Megamenu-userguide-video3.gif

  • Step 4 - Add a path for the menu item;
  • Step 5 - Type in a Menu link title;
  • Step 6 - select Parent item for the menu item;
  • Step 7 - Scroll down and click the Save button.

Refresh the page and see the changes.
The result of these changes can be viewed in the Setting up columns section.

Parameters reference

In this section we would like to build a complete reference for all T3 Navigation System Parameters. We are going to explain each parameter: functions, usage, values and examples of best practices.

TIP: hovering your mouse pointer over each of the parameters in the menu item editing panel, basic usage instructions will pop-up and give you a hint on how to setup the parameters.

Columns Parameter

This parameter defines the number of columns needed to display child menu items of a parent menu item. There are some things you must always remember:

  • the default value of this parameter is 1 (one);
  • if you have for instance 4 child menu items, you will have to set this parameter to 4 columns for the parent item of these menu items, or you can set 2 columns to have a narrowed navigation;
  • you can create as many columns as you need into your navigation structure, but it is better to use columns only for the main menu items, those in your menu root, this way you will avoid template breaks;
  • this parameter is a pair parameter with Group parameter;
  • this parameter only applies to Mega Menu navigation system.


Group Parameter

This parameter will group the parent menu item with it's child menu items to form compact columns. Remember:

  • the default value of this parameter is No;
  • it only groups the parent item with it's direct child items (EG: parent from level 1 with child1, child2, ... childn from level 2);
  • this parameter is a pair parameter for Columns Parameter parameter;
  • see an example here;
  • this parameter only applies to Mega Menu navigation system.


Submenu Width Parameter

This parameter will override the width of the entire child content area. Properties:

  • this parameter has no default value;
  • this parameter must be used for parent menu items and applies to child content area, no matter the number of columns;
  • this parameter is useful for a single column of child items, especially for special advertising or different types modules having a higher width value than the default 200 pixels column width;
  • this parameter only applies to Mega Menu navigation system.


Column Width Parameter

This parameter will override the default column width of 200 pixels for all columns. So:

  • this parameter has no default value;
  • this parameter is used for parent menu items, and applies to all direct child items columns;
  • this parameter might be useful when you have relatively long menu item titles or you just want to add a distinctive look to your navigation;
  • this parameter only applies to Mega Menu navigation system.


Specific Column Width Parameter

This parameter will override the default width of 200 pixels for one or more columns.

  • this parameter has no default value;
  • this parameter is used for parent menu items, and applies to specific direct child items columns;
  • this parameter is very useful when you have more columns with distinctive menu item title lengths or larger images and you want to use a custom width for certain columns, just like we have done for the Vimeo video player;
  • for each of the child items, you have to define the width using this variable: colw1 - meaning width of the first column;
  • when using custom width for multiple columns, you must not use comma. Example: colw1=220 colw2=230
  • you can see an example here;
  • this parameter only applies to Mega Menu navigation system.


Submenu Content Parameter

Child menu items OR None

  • this is the default option for the Submenu Content parameter;
  • this option will define the menu item behavior as a regular Drupal menu item;
  • the significance of this option is that the menu item will load no additional content, furthermore it will not load any scripts for such actions, just like we would disable loading block modules;
  • using this option will produce no effect on any menu system, but switching to this option, will disable loading additional content for Mega Menu navigation system.


Blocks as menu items

  • using this option will allow you to load a module block by it's title, with other words if you set your module title "Latest News", this is what you are going to see here for block module selection;
  • this option only affects Mega Menu and enables the first method of loading block modules as menu items.



Regions as menu items

  • using this option will allow you to load one or several block modules assigned to a certain region, and the select box will show you all regions defined in the Drupal theme (user1, user2, top-panel, mass-bottom, etc)
  • this option only affects Mega Menu and enables the second method of loading modules as menu items.


Menu Image

  • This is a Joomla! feature for menu items now available for Drupal thanks to JD T3 Framework.
  • It allows you to set an appropriate icon for each menu item.
  • See an example here.
  • This parameter applies to all menu systems.


Additional Class

  • Another common feature for both Joomla! and Drupal.
  • It provides an excellent way to make your menu items unique by using menu item class suffix.
  • Examples:
    • green_item class with styling .green-item {background-color:green;} - will override the default menu item background color with the one you set this way;
    • float-right class with styling .float-right {float:right;} - will force alignment for the menu item.
    • See a live demo here.



image:Drupal-128.png

JD T3 Framework 2.0 for Drupal Resources
Overview | Developer Guides | Customization FAQs | Navigation | Copyright


image:Joomla-128.png

JA T3 Framework 2.0 for Joomla! Resources
Overview | Developer Guides | Customization FAQs | Navigation | Copyright

Personal tools