SlideShare a Scribd company logo
1 of 25
1 Company Confidential
Introduction to DDRMenu
Mark Allan
www.dnngarden.com
2 Company Confidential
What we’ll be covering
 Evolution of DDRMenu
 Upgrading existing skins
 Included and freely available menus
 Building your own menus
 Configuration
 “Power user” features
3 Company Confidential
3
Evolution of DDRMenu
4 Company Confidential
Evolution of DDRMenu – v1.0
 Development started late 2008, straight DNNMenu
replacement
 Extended to emulate SolPart
 XSL templates introduced
 v1.0 released as freeware June 2009
5 Company Confidential
Evolution of DDRMenu – v2.0
 v2.0 with token and Razor templating released as open
source start of March 2011
 Donated to DotNetNuke by end of March!
 Used in DNN 6 for UL mega menus in default skin, admin
menu and actions menu
6 Company Confidential
6
Upgrading existing skins
7 Company Confidential
What’s wrong with DNNMenu?
 V1 uses onclick instead of true hyperlinks
• Poor SEO
• Poor accessibility
• No URL on mouseover
• No right-click support
 Browser sniffing not feature detection
 Only one style
 Limited support
8 Company Confidential
How does DDRMenu help?
 Renders as unordered list in HTML source
 jQuery for cross-browser compatibility
 Converts UL to DNNMenu layout at client
 Overlays hyperlinks
 Adds animations
 Same approach for SolPart
 Templates for user-defined menu types
9 Company Confidential
Upgrading DNNMenu
1. Install DDRMenu (if pre-DNN 6)
2. Replace
<dnn:NAV ProviderName="DNNMenuNavigationProvider">
with
<dnn:NAV ProviderName="DDRMenuNavigationProvider">
3. That’s it …
10 Company Confidential
10
Demo
Upgrading a DNNMenu
11 Company Confidential
11
Beyond DNNMenu
12 Company Confidential
Included with DNN 6
 DarkKnight standard menu
 DarkKnight mega-menu
 Admin mega-menu
 Actions mega-menu
13 Company Confidential
Free templates
 dnnddrmenutemplates.codeplex.com
• Superfish
• Treeview
• Accordion
• Breadcrumb
• Sitemap
• HTML <select>
• jQuery UI menu (once jQuery UI 1.9 released)
• Starter UL templates
• Community contributions:
 Mega menu
 …?
14 Company Confidential
14
Demo
Using ready-made templates
15 Company Confidential
15
Building your own menus
16 Company Confidential
Building your own templates
 XSLT
• Very flexible
• Supported in all versions of DNN & .NET
• Can be a bit scary if not used to functional programming
 Razor
• Completely flexible - access to DotNetNuke API
• Only in DNN 5.6 or 6 with .NET 4
• C# or VB
 Tokens
• Relatively easy
• A bit restrictive
17 Company Confidential
17
Demo
Custom templates
18 Company Confidential
18
Configuration
19 Company Confidential
Choosing pages to show
 NodeSelector
• “rootonly” – top level only
• “rootchildren” – children of current root page
• “currentchildren” – children of current page
• {root},{skip},{depth} – more complex scenarios
 IncludeNodes
 ExcludeNodes
 IncludeHidden
20 Company Confidential
20
Demo
Choosing pages to show
21 Company Confidential
21
Power features
22 Company Confidential
Power features
 Add as module
 Use as action menu
 Automatic internationalisation
 Custom node manipulation
 Localisation of custom strings
 Supply custom XML
23 Company Confidential
Summary
 Upgrade DNNMenu and Solpart for a quick win in existing
skins
 Use new templates for simple new skins
 Create your own templates for more complex menus (e.g.
conversions)
 Contribute the results!
24 Company Confidential
Resources
 Download: http://dnnddrmenu.codeplex.com
 Templates: http://dnnddrmenutemplates.codeplex.com
 Support: http://forums.dotnetnuke.com
 Documentation: http://wiki.dotnetnuke.com
 Me: http://www.dnngarden.com
25 Company Confidential
25
Questions?
mark@dnngarden.com / MarkXA

More Related Content

Similar to Introduction to DDRMenu

Where are we going DNNCon Keynote
Where are we going   DNNCon KeynoteWhere are we going   DNNCon Keynote
Where are we going DNNCon KeynoteJoe Brinkman
 
Jmp103-Get the Jump on Mobilizing Your Notes and Domino Applications Today!
Jmp103-Get the Jump on Mobilizing Your Notes and Domino Applications Today!Jmp103-Get the Jump on Mobilizing Your Notes and Domino Applications Today!
Jmp103-Get the Jump on Mobilizing Your Notes and Domino Applications Today!Howard Greenberg
 
Adobe MAX: Rapidly Build HTML5 Apps with Sencha Designer
Adobe MAX: Rapidly Build HTML5 Apps with Sencha DesignerAdobe MAX: Rapidly Build HTML5 Apps with Sencha Designer
Adobe MAX: Rapidly Build HTML5 Apps with Sencha DesignerAaron Conran
 
From Containerization to Modularity
From Containerization to ModularityFrom Containerization to Modularity
From Containerization to Modularityoasisfeng
 
Matteo Gazzurelli - Introduction to Android Development - Have a break edition
Matteo Gazzurelli - Introduction to Android Development - Have a break editionMatteo Gazzurelli - Introduction to Android Development - Have a break edition
Matteo Gazzurelli - Introduction to Android Development - Have a break editionDuckMa
 
Web Components
Web ComponentsWeb Components
Web ComponentsFITC
 
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013DuckMa
 
Real World Windows 8 Apps in JavaScript
Real World Windows 8 Apps in JavaScriptReal World Windows 8 Apps in JavaScript
Real World Windows 8 Apps in JavaScriptDomenic Denicola
 
IBM Drupal Users Group Discussion on Managing and Deploying Configuration
IBM Drupal Users Group Discussion on Managing and Deploying ConfigurationIBM Drupal Users Group Discussion on Managing and Deploying Configuration
IBM Drupal Users Group Discussion on Managing and Deploying ConfigurationDevelopment Seed
 
jQuery: The World's Most Popular JavaScript Library Comes to XPages
jQuery: The World's Most Popular JavaScript Library Comes to XPagesjQuery: The World's Most Popular JavaScript Library Comes to XPages
jQuery: The World's Most Popular JavaScript Library Comes to XPagesTeamstudio
 
DotNetNuke – CMS redefined
DotNetNuke – CMS redefinedDotNetNuke – CMS redefined
DotNetNuke – CMS redefinedCharles Nurse
 
02 configuration
02   configuration02   configuration
02 configurationdarwinodb
 
Components Approach to building Web Apps
Components Approach to building Web AppsComponents Approach to building Web Apps
Components Approach to building Web AppsVinci Rufus
 
Surviving a Plane Crash, a NU.nl case-study
Surviving a Plane Crash, a NU.nl case-studySurviving a Plane Crash, a NU.nl case-study
Surviving a Plane Crash, a NU.nl case-studypeter_ibuildings
 
Node Summit 2016: Building your DevOps for Node.js
Node Summit 2016: Building your DevOps for Node.jsNode Summit 2016: Building your DevOps for Node.js
Node Summit 2016: Building your DevOps for Node.jsChetan Desai
 
Headless browser: puppeteer and git client : GitKraken
Headless browser: puppeteer and git client : GitKrakenHeadless browser: puppeteer and git client : GitKraken
Headless browser: puppeteer and git client : GitKrakenSheikhMoonwaraAnjumM
 
Radu vunvulea building and testing windows 8 metro style applications using ...
Radu vunvulea  building and testing windows 8 metro style applications using ...Radu vunvulea  building and testing windows 8 metro style applications using ...
Radu vunvulea building and testing windows 8 metro style applications using ...Radu Vunvulea
 
Building a Modern Windows App
Building a Modern Windows AppBuilding a Modern Windows App
Building a Modern Windows AppBrent Edwards
 
Win j svsphonegap-damyan-petev-mihail-mateev
Win j svsphonegap-damyan-petev-mihail-mateevWin j svsphonegap-damyan-petev-mihail-mateev
Win j svsphonegap-damyan-petev-mihail-mateevMihail Mateev
 

Similar to Introduction to DDRMenu (20)

Where are we going DNNCon Keynote
Where are we going   DNNCon KeynoteWhere are we going   DNNCon Keynote
Where are we going DNNCon Keynote
 
Jmp103-Get the Jump on Mobilizing Your Notes and Domino Applications Today!
Jmp103-Get the Jump on Mobilizing Your Notes and Domino Applications Today!Jmp103-Get the Jump on Mobilizing Your Notes and Domino Applications Today!
Jmp103-Get the Jump on Mobilizing Your Notes and Domino Applications Today!
 
Adobe MAX: Rapidly Build HTML5 Apps with Sencha Designer
Adobe MAX: Rapidly Build HTML5 Apps with Sencha DesignerAdobe MAX: Rapidly Build HTML5 Apps with Sencha Designer
Adobe MAX: Rapidly Build HTML5 Apps with Sencha Designer
 
From Containerization to Modularity
From Containerization to ModularityFrom Containerization to Modularity
From Containerization to Modularity
 
Matteo Gazzurelli - Introduction to Android Development - Have a break edition
Matteo Gazzurelli - Introduction to Android Development - Have a break editionMatteo Gazzurelli - Introduction to Android Development - Have a break edition
Matteo Gazzurelli - Introduction to Android Development - Have a break edition
 
Web Components
Web ComponentsWeb Components
Web Components
 
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013
Matteo Gazzurelli - Andorid introduction - Google Dev Fest 2013
 
Real World Windows 8 Apps in JavaScript
Real World Windows 8 Apps in JavaScriptReal World Windows 8 Apps in JavaScript
Real World Windows 8 Apps in JavaScript
 
IBM Drupal Users Group Discussion on Managing and Deploying Configuration
IBM Drupal Users Group Discussion on Managing and Deploying ConfigurationIBM Drupal Users Group Discussion on Managing and Deploying Configuration
IBM Drupal Users Group Discussion on Managing and Deploying Configuration
 
jQuery: The World's Most Popular JavaScript Library Comes to XPages
jQuery: The World's Most Popular JavaScript Library Comes to XPagesjQuery: The World's Most Popular JavaScript Library Comes to XPages
jQuery: The World's Most Popular JavaScript Library Comes to XPages
 
DotNetNuke – CMS redefined
DotNetNuke – CMS redefinedDotNetNuke – CMS redefined
DotNetNuke – CMS redefined
 
02 configuration
02   configuration02   configuration
02 configuration
 
Components Approach to building Web Apps
Components Approach to building Web AppsComponents Approach to building Web Apps
Components Approach to building Web Apps
 
Surviving a Plane Crash, a NU.nl case-study
Surviving a Plane Crash, a NU.nl case-studySurviving a Plane Crash, a NU.nl case-study
Surviving a Plane Crash, a NU.nl case-study
 
Node Summit 2016: Building your DevOps for Node.js
Node Summit 2016: Building your DevOps for Node.jsNode Summit 2016: Building your DevOps for Node.js
Node Summit 2016: Building your DevOps for Node.js
 
Headless browser: puppeteer and git client : GitKraken
Headless browser: puppeteer and git client : GitKrakenHeadless browser: puppeteer and git client : GitKraken
Headless browser: puppeteer and git client : GitKraken
 
Radu vunvulea building and testing windows 8 metro style applications using ...
Radu vunvulea  building and testing windows 8 metro style applications using ...Radu vunvulea  building and testing windows 8 metro style applications using ...
Radu vunvulea building and testing windows 8 metro style applications using ...
 
Building a Modern Windows App
Building a Modern Windows AppBuilding a Modern Windows App
Building a Modern Windows App
 
Win j svsphonegap-damyan-petev-mihail-mateev
Win j svsphonegap-damyan-petev-mihail-mateevWin j svsphonegap-damyan-petev-mihail-mateev
Win j svsphonegap-damyan-petev-mihail-mateev
 
Oracle 12c Launch Event 01 JDeveloper Jonathan Damen and Marcel Oldenkamp
Oracle 12c Launch Event 01 JDeveloper Jonathan Damen and Marcel OldenkampOracle 12c Launch Event 01 JDeveloper Jonathan Damen and Marcel Oldenkamp
Oracle 12c Launch Event 01 JDeveloper Jonathan Damen and Marcel Oldenkamp
 

More from Mark Allan

Serverless Azure
Serverless AzureServerless Azure
Serverless AzureMark Allan
 
Azure - The Good Parts
Azure - The Good PartsAzure - The Good Parts
Azure - The Good PartsMark Allan
 
DNN Connect - Mobile Development With Xamarin
DNN Connect - Mobile Development With XamarinDNN Connect - Mobile Development With Xamarin
DNN Connect - Mobile Development With XamarinMark Allan
 
Reactive Extensions (Rx)
Reactive Extensions (Rx)Reactive Extensions (Rx)
Reactive Extensions (Rx)Mark Allan
 
onmouseover="dead"
onmouseover="dead"onmouseover="dead"
onmouseover="dead"Mark Allan
 
HTML5 for developers
HTML5 for developersHTML5 for developers
HTML5 for developersMark Allan
 
HTML5 vs Silverlight
HTML5 vs SilverlightHTML5 vs Silverlight
HTML5 vs SilverlightMark Allan
 

More from Mark Allan (7)

Serverless Azure
Serverless AzureServerless Azure
Serverless Azure
 
Azure - The Good Parts
Azure - The Good PartsAzure - The Good Parts
Azure - The Good Parts
 
DNN Connect - Mobile Development With Xamarin
DNN Connect - Mobile Development With XamarinDNN Connect - Mobile Development With Xamarin
DNN Connect - Mobile Development With Xamarin
 
Reactive Extensions (Rx)
Reactive Extensions (Rx)Reactive Extensions (Rx)
Reactive Extensions (Rx)
 
onmouseover="dead"
onmouseover="dead"onmouseover="dead"
onmouseover="dead"
 
HTML5 for developers
HTML5 for developersHTML5 for developers
HTML5 for developers
 
HTML5 vs Silverlight
HTML5 vs SilverlightHTML5 vs Silverlight
HTML5 vs Silverlight
 

Recently uploaded

SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
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
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 

Recently uploaded (20)

SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
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
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 

Introduction to DDRMenu

Editor's Notes

  1. But we love Jon Henning!
  2. You get DDRMenu from CodePlex.
  3. Show standard DNNMenu Show no mouseover text, no right click View source, show no hyperlinks Update to DDRMenu Show mouseover text and right click Show unordered list in source <%@ Register TagPrefix="dnn" Namespace="DotNetNuke.UI.Skins" Assembly="DotNetNuke" %> <CustomAttributes> <dnn:CustomAttribute Name="effect" Value="puff"/> <dnn:CustomAttribute Name="effectOptions" Value="{percent:200}"/> <dnn:CustomAttribute Name="effectSpeed" Value="slow"/> </CustomAttributes> Show puff effect Show no effect
  4. All available with the standard DNN distribution for you to use or tweak.
  5. Superfish is a standard unordered list flyout menu, like DNNMenu in undordered list mode. TreeView and Accordion are standard jQuery plugins. HTML <select> is just a dropdown listbox. jQuery UI is introducing a menu control in version 1.9. I’ve got a prototype template working with the current pre-release version, and once it’s actually released I’ll add it to the gallery. I’m hoping for lots of contributions, Armand of 2DNN has already got one mostly ready and I’ve had a couple more promised.
  6. Install all templates into skin folder Add <%@ Register TagPrefix="ddr" TagName="MENU" Src="~/DesktopModules/DDRMenu/Menu.ascx" %> to start of ASCX Add <ddr:MENU runat="server" MenuStyle="Superfish" /> Show and repeat for jQueryToolsAccordion, Treeview, Dropdown, 2DNN Mega, ULXSLT, leading on to …
  7. XSL is a complete functional programming language, designed for exactly this sort of work. Razor can do anything, it has full access to the DNN API and so if you can guarantee that you’re on a recent build of DNN and .NET is an extremely powerful option. Tokens on the other hand are very simple. Just token replacement and a bit of conditional and looping logic. Great if you’re going to use JavaScript for all your logic.
  8. First show DumpXML, explain that this is the underlying data. Then switch back to ULXSLT, show template source Then show ULRazor Finally show ULTokens Show plain menudef.xml from ULXSLT Open up menudef.xml from 2DNN Mega and Superfish to show CSS/jQuery options for redistributable templates
  9. A common use of NodeSelector is to simply supply the root page by name or ID. IncludeNodes and ExcludeNodes work by tab id or name on the top level pages. Usually used for Admin and Host in versions 4 and 5 of DNN, but can also be used to partition the site in other ways. IncludeHidden is a new feature in DNN 6. It allows you to access any hidden pages. Again, this allows you to hide a set of pages from general view but have them available for specific menus. It’s used for the Admin and Host menus in the DNN control panel, and could be used e.g. to separate out a mobile section of a site.
  10. Demonstrate NodeSelectors: rootonly rootchildren currentchildren (root, skip, depth) – e.g. Page name for root Demonstrate IncludeHidden (show a set of pages hidden from the main menu): <ddr:MENU MenuStyle="Mega" IncludeHidden="true" NodeSelector="Hidden" runat="server" />
  11. Module is exactly as you’d expect, all the same settings and so on apply. You can also use it for action menus, either to improve the positioning of a DNNMenu style action menu in DNN 4 and 5, or in DNN 6 it’s been used to provide a mega-menu style. Internationalisation automatically picks up Ealo, Apollo, Adequation and of course native DNN localisation, plus any module which implements the right interface. Custom node manipulation allows you to supply your own code to add, change or remove pages in the menu before displaying them. For instance, you could add a custom menu that links directly to particular views of a single module. You can localise your own strings, for example if you’ve got a mega menu that needs custom headings or descriptions. Finally, you can supply your own XML file if you want to use a DDRMenu template to display a predefined set of options.