SlideShare una empresa de Scribd logo
ThemingDrupal menus This presentation will cover the basics of setting up navigation menus within Drupal Recommend DrupalContrib Modules to enhance your menu's functionality Provide CSS tips for themingDrupal menus
Introduction / Background Presenter Trent Wyman Occupation DrupalTheming Specialist, Drupal Developer DrupalExperience Began experimenting with Drupal in version 4.7.  Employed full-time as a Drupal Developer & Theming Specialist since version 5. Company Mediacurrentwww.mediacurrent.com About Mediacurrent Web development firm located in Alpharetta, GA.  focused solely on Drupal development and Drupalcustomization
Static Links v/s Drupal Menu Links Static Navigation Files (hard-coded menu links) sometimes written as HTML within a page file (pre Web 2.0) commonly used as include files to display globally or as needed (common method today) DrupalMenu Links Drupal'smenu system requires no direct coding or file management to add or edit navigation to your site Drupalmenus can be setup and managed without any knowledge of HTML, PHP, or other coding language
When to Use a Static Navigation File v/s When to Use Drupal's Menu System There is rarely a need to use static menu files in Drupal (due to its flexibility & ease-of-use) A static menu may be necessary when a site has graphic design requirements that are not possible using Drupalmenus
Examples when a static menu may be required The design uses non-websafefonts that have to be converted into images to use as buttons instead of standard text links Perhaps you need to granular theme your links and the default Drupal menu does not provide style classes specific enough to target individual links v/s others Applying custom background images and hover effects to menu items
Most often (if not always) you should create your site navigation using Drupal's menu system Easier to update and manage v/s static file Drupal’s menu output is Web Standards compliant Static menu files often contain validation errors that result from excessive editing from multiple programmers over a period of time Drupal menus are typically more accessible than static menus Links can be recognized and read by screen reader applications for those with visual disabilities Links are available via keyboard input and do not rely solely on mouse interaction. This makes navigation accessible to those with physical disabilities
Still feel limited to using a static menu file?There are alternatives to design limitations If the design does require non-websafe fonts, consider using the Dynamic Rendering module http://drupal.org/project/render If you need to granular theme your links and require unique style classes for all nested menu items, consider using a Drupalcontrib module to add more flexibility to your menus
The Drupal Menu System (out of the box) Primary Links Menu typically, primary links are used to refer to a site's main navigation menu that appears globally on a site Secondary Links Menu generally used to refer to sub-menu items belonging to a primary navigation (sub-section links belonging to a parent menu item) Drupal's Secondary Links Menu is separate from the Primary Links Menu (intended to be used as a lesser navigation) Navigation Menu Drupal’s administrative menu to navigate through administrative tasks (adding/editing content, configuring modules, etc.)
Drupal Menu System (out of the box)
Creating custom Drupal menus The easiest way to create a custom primary menu in Drupal is to add your own links into the existing Primary Links Menu To create a unique menu in Drupal you can click on the "Add Menu" tab located on the menu administration page www.yoursite.com/admin/build/menu/add
Creating custom Drupal menus
Drupal Menu Contrib Modules (to enhance your menu theming and functionality) Nice Menus http://drupal.org/project/nice_menus Enables drop-down/right/left expandable menus.  Uses only CSS for most browsers, with minimal Javascript for IE6. Version 2 uses the SuperfishjQueryplugin for all browsers, with an option to disable JS, and falls back to CSS-only for browsers that can handle it.
Example of Nice Menus contrib module
Drupal Menu Contrib Modules (to enhance your menu theming and functionality) DHTML Menu http://drupal.org/project/dhtml_menu Uses JavaScript to reduce the number of page loads when using nested menus When using default Drupal menus, to see the sub-items in a menu, you need to click the link of this item and wait for a full page load. After enabling DHTML Menu, clicking a menu link once will expand it to reveal its sub-items without reloading the page. Double-click on the item will load the page normally. Also sets a cookie to store which menus are open and which are closed, so that the state of the menus remain consistent as you navigate around the site.
Example of DHTML Menu module
Drupal Menu Contrib Modules (to enhance your menu theming and functionality) JQuery Menu (http://drupal.org/project/jquerymenu) Jquerymenu uses simple, cross browser compatible jquery to make your multilevel menus collapsible and expandable. Unlike DHTML Menu (which requires you to click twice on a link to actually follow an expanded link)  Jquery menu separates the link from the expanding mechanism (displays small plus symbol that you click instead to expand the menu).
Example of Jquery Menu module
Techniques for ThemingDrupal Menu Links Assigning Drupal Menus to a Page Region Using Drupal blocks to display your menu within a region Script to programmatically display menu within a page template (.tpl file) Basic CSS targeting to theme your menu links Suckerfish CSS http://www.alistapart.com/articles/dropdowns/
Assigning Drupal Menus to a Page Region
Script that programmatically displays the Primary Links menu
Basic CSS Targeting to theme menu links If using Drupal's default Primary Menu, you can use basic CSS to target your links for theming
Suckerfish CSS techniques Enhances menu theming Provides hover states (drop downs) to your menu to hide & show 2nd & 3rd level links Suckerfish CSS is cross-browser compatible Uses a lightweight JavaScript file to apply mouseover & mouseout events to links
Example of Suckerfish CSS applied to a static menu http://www.carlos.emory.edu
Example of Suckerfish CSS applied to a Drupal menu http://localracing.nascar.com
Questions?

Más contenido relacionado

La actualidad más candente

Is Wordpress a threat to Drupal
Is Wordpress a threat to Drupal Is Wordpress a threat to Drupal
Is Wordpress a threat to Drupal
Ebizon
 
Hello Drupal!
Hello Drupal!Hello Drupal!
Hello Drupal!
Acquia
 

La actualidad más candente (15)

Dreamweaver
DreamweaverDreamweaver
Dreamweaver
 
Standing up for the content creators: Site building and theming for the admin...
Standing up for the content creators: Site building and theming for the admin...Standing up for the content creators: Site building and theming for the admin...
Standing up for the content creators: Site building and theming for the admin...
 
Is Wordpress a threat to Drupal
Is Wordpress a threat to Drupal Is Wordpress a threat to Drupal
Is Wordpress a threat to Drupal
 
Beginner's guide to drupal
Beginner's guide to drupalBeginner's guide to drupal
Beginner's guide to drupal
 
Open source cms-presentation-v1
Open source cms-presentation-v1Open source cms-presentation-v1
Open source cms-presentation-v1
 
Flaix responsive joomla template
Flaix responsive joomla templateFlaix responsive joomla template
Flaix responsive joomla template
 
Drupal For Dummies
Drupal For DummiesDrupal For Dummies
Drupal For Dummies
 
Hello Drupal!
Hello Drupal!Hello Drupal!
Hello Drupal!
 
Machine Exporter
Machine ExporterMachine Exporter
Machine Exporter
 
Introduction to drupal
Introduction to drupalIntroduction to drupal
Introduction to drupal
 
Content management system
Content management systemContent management system
Content management system
 
Cms
CmsCms
Cms
 
Consilium responsive joomla template
Consilium responsive joomla templateConsilium responsive joomla template
Consilium responsive joomla template
 
Consilium Responsive Joomla Template
 Consilium Responsive Joomla Template Consilium Responsive Joomla Template
Consilium Responsive Joomla Template
 
What I Like About Flare
What I Like About FlareWhat I Like About Flare
What I Like About Flare
 

Similar a Theming Drupal Menus

Overview and Comparison of Open Source CMS
Overview and Comparison of Open Source CMSOverview and Comparison of Open Source CMS
Overview and Comparison of Open Source CMS
softweb009
 
Drupal seminar at DDIT Nadiad
Drupal seminar at DDIT NadiadDrupal seminar at DDIT Nadiad
Drupal seminar at DDIT Nadiad
karmraj
 
Introduction To Drupal
Introduction To DrupalIntroduction To Drupal
Introduction To Drupal
Lauren Roth
 

Similar a Theming Drupal Menus (20)

Start with Drupal CMS
Start with Drupal CMSStart with Drupal CMS
Start with Drupal CMS
 
Neue Infos rund um WCAG 2.0
Neue Infos rund um WCAG 2.0Neue Infos rund um WCAG 2.0
Neue Infos rund um WCAG 2.0
 
Vskills certified open source cms drupal professional sample material
Vskills certified open source cms drupal professional sample materialVskills certified open source cms drupal professional sample material
Vskills certified open source cms drupal professional sample material
 
Drupal by Gaurav Boudh
Drupal by Gaurav BoudhDrupal by Gaurav Boudh
Drupal by Gaurav Boudh
 
Overview and Comparison of Open Source CMS
Overview and Comparison of Open Source CMSOverview and Comparison of Open Source CMS
Overview and Comparison of Open Source CMS
 
Drupal introduction
Drupal introductionDrupal introduction
Drupal introduction
 
Drupal 6x Installation
Drupal 6x Installation Drupal 6x Installation
Drupal 6x Installation
 
Introduction of drupal7 by ayushi infotech
Introduction of drupal7 by ayushi infotechIntroduction of drupal7 by ayushi infotech
Introduction of drupal7 by ayushi infotech
 
Drupal Experience Sharing at Prime College
Drupal Experience Sharing at Prime CollegeDrupal Experience Sharing at Prime College
Drupal Experience Sharing at Prime College
 
Drupal Experience Sharing At Prime College
Drupal Experience Sharing At Prime CollegeDrupal Experience Sharing At Prime College
Drupal Experience Sharing At Prime College
 
Drupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs PanelsDrupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs Panels
 
Content Management System
Content Management SystemContent Management System
Content Management System
 
Drupal seminar at DDIT Nadiad
Drupal seminar at DDIT NadiadDrupal seminar at DDIT Nadiad
Drupal seminar at DDIT Nadiad
 
Dashboard
DashboardDashboard
Dashboard
 
Panels - Drupal Gov Con 2016
Panels - Drupal Gov Con 2016Panels - Drupal Gov Con 2016
Panels - Drupal Gov Con 2016
 
Menus Implementation with IBM Rational HATS
Menus Implementation with IBM Rational HATSMenus Implementation with IBM Rational HATS
Menus Implementation with IBM Rational HATS
 
Drupal Basics
Drupal BasicsDrupal Basics
Drupal Basics
 
Introduction To Drupal
Introduction To DrupalIntroduction To Drupal
Introduction To Drupal
 
Drupal is from Mars, Wordpress is from Venus: Finding your library's CMS soul...
Drupal is from Mars, Wordpress is from Venus: Finding your library's CMS soul...Drupal is from Mars, Wordpress is from Venus: Finding your library's CMS soul...
Drupal is from Mars, Wordpress is from Venus: Finding your library's CMS soul...
 
Drupal for Libraries 05/28/09
Drupal for Libraries 05/28/09Drupal for Libraries 05/28/09
Drupal for Libraries 05/28/09
 

Más de Mediacurrent

Más de Mediacurrent (20)

Penn State News: Pivoting to Decoupled Drupal with Gatsby
Penn State News: Pivoting to Decoupled Drupal with GatsbyPenn State News: Pivoting to Decoupled Drupal with Gatsby
Penn State News: Pivoting to Decoupled Drupal with Gatsby
 
Evolving How We Measure Digital Success in Higher Ed
Evolving How We Measure Digital Success in Higher EdEvolving How We Measure Digital Success in Higher Ed
Evolving How We Measure Digital Success in Higher Ed
 
Penn State scales static Drupal to new heights
Penn State scales static Drupal to new heightsPenn State scales static Drupal to new heights
Penn State scales static Drupal to new heights
 
Delivering Meaningful Digital Experiences in Higher Ed
Delivering Meaningful Digital Experiences in Higher EdDelivering Meaningful Digital Experiences in Higher Ed
Delivering Meaningful Digital Experiences in Higher Ed
 
Content Strategy: Building Connections with Your Audience
Content Strategy: Building Connections with Your AudienceContent Strategy: Building Connections with Your Audience
Content Strategy: Building Connections with Your Audience
 
Decoupled Drupal and Gatsby in the Real World
Decoupled Drupal and Gatsby in the Real WorldDecoupled Drupal and Gatsby in the Real World
Decoupled Drupal and Gatsby in the Real World
 
A Better Way to Build and Manage Sites with Rain for Drupal 9
A Better Way to Build and Manage Sites with Rain for Drupal 9A Better Way to Build and Manage Sites with Rain for Drupal 9
A Better Way to Build and Manage Sites with Rain for Drupal 9
 
Drupal Security: What You Need to Know
Drupal Security: What You Need to KnowDrupal Security: What You Need to Know
Drupal Security: What You Need to Know
 
Leveraging Design Systems to Streamline Web Projects
Leveraging Design Systems to Streamline Web ProjectsLeveraging Design Systems to Streamline Web Projects
Leveraging Design Systems to Streamline Web Projects
 
Reimagining Your Higher Ed Web Strategy
Reimagining Your Higher Ed Web StrategyReimagining Your Higher Ed Web Strategy
Reimagining Your Higher Ed Web Strategy
 
How to Digitally Transform Higher Ed with Drupal
How to Digitally Transform Higher Ed with DrupalHow to Digitally Transform Higher Ed with Drupal
How to Digitally Transform Higher Ed with Drupal
 
Is my website accessible? Common mistakes (and how to fix them)
Is my website accessible? Common mistakes (and how to fix them)Is my website accessible? Common mistakes (and how to fix them)
Is my website accessible? Common mistakes (and how to fix them)
 
Managing Images In Large Scale Drupal 8 & 9 Websites
Managing Images In Large Scale Drupal 8 & 9 WebsitesManaging Images In Large Scale Drupal 8 & 9 Websites
Managing Images In Large Scale Drupal 8 & 9 Websites
 
Paragraphs v Layout Builder - The Final Showdown
Paragraphs v Layout Builder - The Final ShowdownParagraphs v Layout Builder - The Final Showdown
Paragraphs v Layout Builder - The Final Showdown
 
MagMutual.com: On the JAMStack with Gatsby and Drupal 8
 MagMutual.com: On the JAMStack with Gatsby and Drupal 8 MagMutual.com: On the JAMStack with Gatsby and Drupal 8
MagMutual.com: On the JAMStack with Gatsby and Drupal 8
 
Creating an Organizational Culture of Giving Back to Drupal
Creating an Organizational Culture of Giving Back to DrupalCreating an Organizational Culture of Giving Back to Drupal
Creating an Organizational Culture of Giving Back to Drupal
 
Level Up Your Team: Front-End Development Best Practices
Level Up Your Team: Front-End Development Best PracticesLevel Up Your Team: Front-End Development Best Practices
Level Up Your Team: Front-End Development Best Practices
 
Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9
 
How to Prove Marketing ROI: Overcoming Digital Marketing Challenges
How to Prove Marketing ROI: Overcoming Digital Marketing ChallengesHow to Prove Marketing ROI: Overcoming Digital Marketing Challenges
How to Prove Marketing ROI: Overcoming Digital Marketing Challenges
 
Prepare Your Drupal 9 Action Plan
Prepare Your Drupal 9 Action Plan Prepare Your Drupal 9 Action Plan
Prepare Your Drupal 9 Action Plan
 

Último

Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Peter Udo Diehl
 

Último (20)

How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
A Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyA Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System Strategy
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
 
Designing for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at ComcastDesigning for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at Comcast
 
Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024
 
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová10 Differences between Sales Cloud and CPQ, Blanka Doktorová
10 Differences between Sales Cloud and CPQ, Blanka Doktorová
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. Startups
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
 
Intro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджераIntro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджера
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty Secure
 
Connecting the Dots in Product Design at KAYAK
Connecting the Dots in Product Design at KAYAKConnecting the Dots in Product Design at KAYAK
Connecting the Dots in Product Design at KAYAK
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
 

Theming Drupal Menus

  • 1. ThemingDrupal menus This presentation will cover the basics of setting up navigation menus within Drupal Recommend DrupalContrib Modules to enhance your menu's functionality Provide CSS tips for themingDrupal menus
  • 2. Introduction / Background Presenter Trent Wyman Occupation DrupalTheming Specialist, Drupal Developer DrupalExperience Began experimenting with Drupal in version 4.7. Employed full-time as a Drupal Developer & Theming Specialist since version 5. Company Mediacurrentwww.mediacurrent.com About Mediacurrent Web development firm located in Alpharetta, GA. focused solely on Drupal development and Drupalcustomization
  • 3. Static Links v/s Drupal Menu Links Static Navigation Files (hard-coded menu links) sometimes written as HTML within a page file (pre Web 2.0) commonly used as include files to display globally or as needed (common method today) DrupalMenu Links Drupal'smenu system requires no direct coding or file management to add or edit navigation to your site Drupalmenus can be setup and managed without any knowledge of HTML, PHP, or other coding language
  • 4. When to Use a Static Navigation File v/s When to Use Drupal's Menu System There is rarely a need to use static menu files in Drupal (due to its flexibility & ease-of-use) A static menu may be necessary when a site has graphic design requirements that are not possible using Drupalmenus
  • 5. Examples when a static menu may be required The design uses non-websafefonts that have to be converted into images to use as buttons instead of standard text links Perhaps you need to granular theme your links and the default Drupal menu does not provide style classes specific enough to target individual links v/s others Applying custom background images and hover effects to menu items
  • 6. Most often (if not always) you should create your site navigation using Drupal's menu system Easier to update and manage v/s static file Drupal’s menu output is Web Standards compliant Static menu files often contain validation errors that result from excessive editing from multiple programmers over a period of time Drupal menus are typically more accessible than static menus Links can be recognized and read by screen reader applications for those with visual disabilities Links are available via keyboard input and do not rely solely on mouse interaction. This makes navigation accessible to those with physical disabilities
  • 7. Still feel limited to using a static menu file?There are alternatives to design limitations If the design does require non-websafe fonts, consider using the Dynamic Rendering module http://drupal.org/project/render If you need to granular theme your links and require unique style classes for all nested menu items, consider using a Drupalcontrib module to add more flexibility to your menus
  • 8. The Drupal Menu System (out of the box) Primary Links Menu typically, primary links are used to refer to a site's main navigation menu that appears globally on a site Secondary Links Menu generally used to refer to sub-menu items belonging to a primary navigation (sub-section links belonging to a parent menu item) Drupal's Secondary Links Menu is separate from the Primary Links Menu (intended to be used as a lesser navigation) Navigation Menu Drupal’s administrative menu to navigate through administrative tasks (adding/editing content, configuring modules, etc.)
  • 9. Drupal Menu System (out of the box)
  • 10. Creating custom Drupal menus The easiest way to create a custom primary menu in Drupal is to add your own links into the existing Primary Links Menu To create a unique menu in Drupal you can click on the "Add Menu" tab located on the menu administration page www.yoursite.com/admin/build/menu/add
  • 12. Drupal Menu Contrib Modules (to enhance your menu theming and functionality) Nice Menus http://drupal.org/project/nice_menus Enables drop-down/right/left expandable menus. Uses only CSS for most browsers, with minimal Javascript for IE6. Version 2 uses the SuperfishjQueryplugin for all browsers, with an option to disable JS, and falls back to CSS-only for browsers that can handle it.
  • 13. Example of Nice Menus contrib module
  • 14. Drupal Menu Contrib Modules (to enhance your menu theming and functionality) DHTML Menu http://drupal.org/project/dhtml_menu Uses JavaScript to reduce the number of page loads when using nested menus When using default Drupal menus, to see the sub-items in a menu, you need to click the link of this item and wait for a full page load. After enabling DHTML Menu, clicking a menu link once will expand it to reveal its sub-items without reloading the page. Double-click on the item will load the page normally. Also sets a cookie to store which menus are open and which are closed, so that the state of the menus remain consistent as you navigate around the site.
  • 15. Example of DHTML Menu module
  • 16. Drupal Menu Contrib Modules (to enhance your menu theming and functionality) JQuery Menu (http://drupal.org/project/jquerymenu) Jquerymenu uses simple, cross browser compatible jquery to make your multilevel menus collapsible and expandable. Unlike DHTML Menu (which requires you to click twice on a link to actually follow an expanded link) Jquery menu separates the link from the expanding mechanism (displays small plus symbol that you click instead to expand the menu).
  • 17. Example of Jquery Menu module
  • 18. Techniques for ThemingDrupal Menu Links Assigning Drupal Menus to a Page Region Using Drupal blocks to display your menu within a region Script to programmatically display menu within a page template (.tpl file) Basic CSS targeting to theme your menu links Suckerfish CSS http://www.alistapart.com/articles/dropdowns/
  • 19. Assigning Drupal Menus to a Page Region
  • 20. Script that programmatically displays the Primary Links menu
  • 21. Basic CSS Targeting to theme menu links If using Drupal's default Primary Menu, you can use basic CSS to target your links for theming
  • 22. Suckerfish CSS techniques Enhances menu theming Provides hover states (drop downs) to your menu to hide & show 2nd & 3rd level links Suckerfish CSS is cross-browser compatible Uses a lightweight JavaScript file to apply mouseover & mouseout events to links
  • 23. Example of Suckerfish CSS applied to a static menu http://www.carlos.emory.edu
  • 24. Example of Suckerfish CSS applied to a Drupal menu http://localracing.nascar.com