Umbraco 7 HTML Site Map Partial View
@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@{ var home = CurrentPage.Site(); }
@if (home.Children.Any())
{
@* Get the first page in the children *@
var naviLevel = home.Children.First().Level;
var listChildPages = "false";
@* Add in level for a CSS hook *@
<ul style="margin-top:0px;paddin:0px;font-size:16px;">
@* For each child page under the home node *@
<li><a href="/" title="@CurrentPage._siteTitle">Home</a></li>
@foreach (var childPage in home.Children.Where("Visible"))
{
if (childPage.Children.Any() && listChildPages =="true" && childPage.id != 1110)
{
<li style="margin-bottom:5px;">
@if(@childPage.HasValue("navigationName"))
{
<a href="@childPage.Url" title="@childPage.Name">@childPage.navigationName</a>
}
else {
<a href="@childPage.Url" title="@childPage.Name">@childPage.Name</a>
}
@childPages(childPage.Children)
</li>
}
else
{
if(childPage.id != 1110)
{
<li style="margin-bottom:5px;">
<a href="@childPage.Url" title="@childPage.Name">@childPage.navigationName</a>
@childPages(childPage.Children)
</li>
}
}
}
</ul>
}
@helper childPages(dynamic pages)
{
@* Ensure that we have a collection of pages *@
if (pages.Any())
{
@* Get the first page in pages and get the level *@
var naviLevel = pages.First().Level;
@* Add in level for a CSS hook *@
<ul style="margin:0px;padding:0px;padding-left:20px;">
@foreach (var page in pages)
{
<li style="margin-bottom:5px;">
@if(@page.HasValue("navigationName"))
{
<a href="@page.Url" title="@page.Name">@page.navigationName</a>
}
else
{
<a href="@page.Url" title="@page.Name">@page.Name</a>
}
@* if the current page has any children *@
@if (page.Children.Any())
{
@* Call our helper to display the children *@
@childPages(page.Children)
}
</li>
}
</ul>
}
}
For more Umbraco work, please visit my website: Mark Development Web Designer East Kilbride, Glasgow for Umbraco.
@{ var home = CurrentPage.Site(); }
@if (home.Children.Any())
{
@* Get the first page in the children *@
var naviLevel = home.Children.First().Level;
var listChildPages = "false";
@* Add in level for a CSS hook *@
<ul style="margin-top:0px;paddin:0px;font-size:16px;">
@* For each child page under the home node *@
<li><a href="/" title="@CurrentPage._siteTitle">Home</a></li>
@foreach (var childPage in home.Children.Where("Visible"))
{
if (childPage.Children.Any() && listChildPages =="true" && childPage.id != 1110)
{
<li style="margin-bottom:5px;">
@if(@childPage.HasValue("navigationName"))
{
<a href="@childPage.Url" title="@childPage.Name">@childPage.navigationName</a>
}
else {
<a href="@childPage.Url" title="@childPage.Name">@childPage.Name</a>
}
@childPages(childPage.Children)
</li>
}
else
{
if(childPage.id != 1110)
{
<li style="margin-bottom:5px;">
<a href="@childPage.Url" title="@childPage.Name">@childPage.navigationName</a>
@childPages(childPage.Children)
</li>
}
}
}
</ul>
}
@helper childPages(dynamic pages)
{
@* Ensure that we have a collection of pages *@
if (pages.Any())
{
@* Get the first page in pages and get the level *@
var naviLevel = pages.First().Level;
@* Add in level for a CSS hook *@
<ul style="margin:0px;padding:0px;padding-left:20px;">
@foreach (var page in pages)
{
<li style="margin-bottom:5px;">
@if(@page.HasValue("navigationName"))
{
<a href="@page.Url" title="@page.Name">@page.navigationName</a>
}
else
{
<a href="@page.Url" title="@page.Name">@page.Name</a>
}
@* if the current page has any children *@
@if (page.Children.Any())
{
@* Call our helper to display the children *@
@childPages(page.Children)
}
</li>
}
</ul>
}
}
For more Umbraco work, please visit my website: Mark Development Web Designer East Kilbride, Glasgow for Umbraco.
Comments
Post a Comment