Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeUsing DNN Platf...Using DNN Platf...Skins, Themes, ...Skins, Themes, ...DNN Mega Menu QuestionDNN Mega Menu Question
Previous
 
Next
New Post
5/2/2012 11:12 AM
 

I am working on a new site utilizing the DNN Mega Menus.

On one of my menu items I have it setup with four sub menu items appearing horizontally with photos under each of them.   This works beautifully.

On another menu item I would like to just have five sub menu items appearing vertically with no photos (traditional dropdown navigation menu).

Is this behavior possible with the DNN Mega Menu provider?  If so, how?   If not, is there anything out there that would allow me to do this?


DONEIN.NET DotNetNuke Modules
Feedback * Google Sitemaps * Meetup * Redirector * Share On Facebook * Site Map * Battleship (FREE)
Follow us on Twitter!
 
New Post
5/5/2012 6:45 AM
 
yes, but you would have to create a custom template - see http://www.dotnetnuke.com/Resources/Wiki/loc/allpages/Cat/DDRMenu.aspx for documentation

Buy the new Professional DNN7: Open Source .NET CMS Platform book Amazon US
 
New Post
5/10/2012 5:55 PM
 
Thanks Cathal. I had toyed around with the template some and changed the appearance a bit. I guess I am missing how I can have one menu item show the horizontal and another menu item show the vertical menu?

DONEIN.NET DotNetNuke Modules
Feedback * Google Sitemaps * Meetup * Redirector * Share On Facebook * Site Map * Battleship (FREE)
Follow us on Twitter!
 
New Post
5/11/2012 4:22 PM
 

Essentially you need to provide an additional piece of information along with the page name so your menu can read that and decide.

I have seen some schemes where people changed the markup based on the page name i.e. called a page "V - Customers" and another "H-Blogs" and during rendering of the template, if it started with V rendered a vertical, if it started with H render a horizontal and in both cases remove the V-/H-). However I think whilst easy these schmes are problematic, so I would recommend using the page level taxonomy i.e. you create a taxonomy item that lists the 2 options and when a user creates a page then check either horizontal or vertical and your menu template reads this value and rendered accordingly.

 


Buy the new Professional DNN7: Open Source .NET CMS Platform book Amazon US
 
New Post
5/11/2012 6:25 PM
 

I created a taxonomy item with a value of either "Horizontal" or "Vertical"

How do I reference the taxonomy object? 

Here is my sample stylesheet, am I on the right track?   If so, what goes in place of $WHATGOESHERE to reference the taxonomy.:

 <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE stylesheet [
<!ENTITY space "<xsl:text> </xsl:text>">
<!ENTITY cr "<xsl:text>
</xsl:text>">
]>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:param name="ControlID" />
<xsl:param name="Options" />
<xsl:param name="ManifestPath" />
<xsl:template match="/*">
<xsl:apply-templates select="root" />
</xsl:template>
<xsl:template match="root">

<div id="{$ControlID}">
<ul class="dnnmega">
<xsl:apply-templates select="node">
<xsl:with-param name="nodeType">root</xsl:with-param>
</xsl:apply-templates>
</ul>
</div>
</xsl:template>

<xsl:template match="node">
<xsl:param name="nodeType" />
<li>
<xsl:variable name="nodeClass">
<xsl:value-of select="$nodeType"/>
<xsl:if test="@separator = 1"> mmSeparator</xsl:if>
<xsl:if test="@selected = 1"> mmSelected</xsl:if>
<xsl:if test="@breadcrumb = 1"> mmBreadcrumb</xsl:if>
<xsl:if test="@first = 1"> mmFirst</xsl:if>
<xsl:if test="@last = 1"> mmLast</xsl:if>
<xsl:if test="node"> mmHasChild</xsl:if>
<xsl:text> child-</xsl:text>
<xsl:value-of select="position()"/>
</xsl:variable>
<xsl:attribute name="class">
<xsl:value-of select="$nodeClass"/>
</xsl:attribute>

<xsl:choose>
<xsl:when test="@enabled = 1">
<a href="{@url}">
<span>
<xsl:value-of select="@text" />
</span>
<xsl:if test="@icon">
<img src="{@icon}" class="mmIcon" />
</xsl:if>
</a>
</xsl:when>
<xsl:otherwise>
<span>
<xsl:value-of select="@text" />
</span>
<xsl:if test="@icon">
<img src="{@icon}" />
</xsl:if>
</xsl:otherwise>
</xsl:choose>

<xsl:if test="node">
<xsl:choose>
<xsl:when test="$nodeType = 'root'">
<xsl:choose>
<xsl:when test="$WHATGOESHERE = 'Vertical'">
<div class="megaborder">
<div class="TR">
<div class="TL"></div>
</div>
<div class="MR">
<div class="ML">
<ul class="M">
<xsl:apply-templates select="node">
<xsl:with-param name="nodeType" >category</xsl:with-param>
</xsl:apply-templates>
<li style="clear:both;float:none;"></li>
</ul>
</div>
</div>
<div class="BR">
<div class="BL"></div>
</div>
</div>
</xsl:when>
<xsl:otherwise>
<ul class="standardmenu">
<xsl:apply-templates select="node">
<xsl:with-param name="nodeType" >category</xsl:with-param>
</xsl:apply-templates>
<li style="clear:both;float:none;"></li>
</ul>
</xsl:otherwise>
</xsl:choose>
</xsl:when>
<xsl:otherwise>
<ul>
<xsl:apply-templates select="node">
<xsl:with-param name="nodeType">leaf</xsl:with-param>
</xsl:apply-templates>
</ul>
</xsl:otherwise>
</xsl:choose>
</xsl:if>
</li>
</xsl:template>
</xsl:stylesheet>

 


DONEIN.NET DotNetNuke Modules
Feedback * Google Sitemaps * Meetup * Redirector * Share On Facebook * Site Map * Battleship (FREE)
Follow us on Twitter!
 
Previous
 
Next
HomeHomeUsing DNN Platf...Using DNN Platf...Skins, Themes, ...Skins, Themes, ...DNN Mega Menu QuestionDNN Mega Menu Question


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out