SlideShare ist ein Scribd-Unternehmen logo
1 von 25
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?

Weitere ähnliche Inhalte

Was ist angesagt?

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...Jim Birch
 
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
 
Beginner's guide to drupal
Beginner's guide to drupalBeginner's guide to drupal
Beginner's guide to drupalmayank.grd
 
Open source cms-presentation-v1
Open source cms-presentation-v1Open source cms-presentation-v1
Open source cms-presentation-v1Jaladhi Bhatt
 
Flaix responsive joomla template
Flaix responsive joomla templateFlaix responsive joomla template
Flaix responsive joomla templateEmilyPhan21291
 
Drupal For Dummies
Drupal For DummiesDrupal For Dummies
Drupal For DummiesKoen Delvaux
 
Hello Drupal!
Hello Drupal!Hello Drupal!
Hello Drupal!Acquia
 
Introduction to drupal
Introduction to drupalIntroduction to drupal
Introduction to drupalmayank.grd
 
Consilium responsive joomla template
Consilium responsive joomla templateConsilium responsive joomla template
Consilium responsive joomla templateEmilyPhan21291
 
Consilium Responsive Joomla Template
 Consilium Responsive Joomla Template Consilium Responsive Joomla Template
Consilium Responsive Joomla TemplateNETBASE CMSMART
 
What I Like About Flare
What I Like About FlareWhat I Like About Flare
What I Like About FlareRose Petralia
 

Was ist angesagt? (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
 

Ähnlich wie Theming Drupal Menus

Start with Drupal CMS
Start with Drupal CMSStart with Drupal CMS
Start with Drupal CMSEdeth Meng
 
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.0Eric Eggert
 
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 materialVskills
 
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 CMSsoftweb009
 
Drupal 6x Installation
Drupal 6x Installation Drupal 6x Installation
Drupal 6x Installation Micky Metts
 
Introduction of drupal7 by ayushi infotech
Introduction of drupal7 by ayushi infotechIntroduction of drupal7 by ayushi infotech
Introduction of drupal7 by ayushi infotechMandakini Kumari
 
Drupal Experience Sharing at Prime College
Drupal Experience Sharing at Prime CollegeDrupal Experience Sharing at Prime College
Drupal Experience Sharing at Prime Collegeguest08bc36
 
Drupal Experience Sharing At Prime College
Drupal Experience Sharing At Prime CollegeDrupal Experience Sharing At Prime College
Drupal Experience Sharing At Prime CollegeGeshan Manandhar
 
Drupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs PanelsDrupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs PanelsDavid Burns
 
Content Management System
Content Management SystemContent Management System
Content Management SystemRavi Bhadauria
 
Drupal seminar at DDIT Nadiad
Drupal seminar at DDIT NadiadDrupal seminar at DDIT Nadiad
Drupal seminar at DDIT Nadiadkarmraj
 
Panels - Drupal Gov Con 2016
Panels - Drupal Gov Con 2016Panels - Drupal Gov Con 2016
Panels - Drupal Gov Con 2016Jason Glisson
 
Menus Implementation with IBM Rational HATS
Menus Implementation with IBM Rational HATSMenus Implementation with IBM Rational HATS
Menus Implementation with IBM Rational HATSRoyal Cyber Inc.
 
Introduction To Drupal
Introduction To DrupalIntroduction To Drupal
Introduction To DrupalLauren Roth
 
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...sbclapp
 
Drupal for Libraries 05/28/09
Drupal for Libraries 05/28/09Drupal for Libraries 05/28/09
Drupal for Libraries 05/28/09Mikael Jacobsen
 

Ähnlich wie 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
 

Mehr von Mediacurrent

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 GatsbyMediacurrent
 
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 EdMediacurrent
 
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 heightsMediacurrent
 
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 EdMediacurrent
 
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 AudienceMediacurrent
 
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 WorldMediacurrent
 
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 9Mediacurrent
 
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 KnowMediacurrent
 
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 ProjectsMediacurrent
 
Reimagining Your Higher Ed Web Strategy
Reimagining Your Higher Ed Web StrategyReimagining Your Higher Ed Web Strategy
Reimagining Your Higher Ed Web StrategyMediacurrent
 
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 DrupalMediacurrent
 
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)Mediacurrent
 
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 WebsitesMediacurrent
 
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 ShowdownMediacurrent
 
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 8Mediacurrent
 
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 DrupalMediacurrent
 
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 PracticesMediacurrent
 
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 9Mediacurrent
 
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 ChallengesMediacurrent
 
Prepare Your Drupal 9 Action Plan
Prepare Your Drupal 9 Action Plan Prepare Your Drupal 9 Action Plan
Prepare Your Drupal 9 Action Plan Mediacurrent
 

Mehr von 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
 

Kürzlich hochgeladen

"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 

Kürzlich hochgeladen (20)

"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 

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