Skip to content

Instantly share code, notes, and snippets.

@maba
Created December 20, 2012 20:59
Show Gist options
  • Save maba/4348501 to your computer and use it in GitHub Desktop.
Save maba/4348501 to your computer and use it in GitHub Desktop.
Try to create a non standard menu with ProcessWire ( http://processwire.com/talk/topic/2409-code-optimization-for-complex-menu/ )
<span class="menu-slider hidden-phone"></span> <!-- Menu Slider -->
<ul id="header-menu" class="menu"><?php
//$homepage = $pages->get("/");
//$children = $homepage->children;
//$class = $homepage === $page ? " class='active current-menu-item'" : '';
//echo "<li$class><a href='{$homepage->url}'>$homepage->title</a></li>";
$companyPage = $pages->get("/azienda/");
$children = $companyPage->children;
$class = $companyPage === $page ? " class='active current-menu-item'" : '';
echo "<li$class><a href='{$companyPage->url}'>$companyPage->title</a>";
echo "<ul class='sub-menu'>";
foreach ($children as $c) {
echo "<li><a href='$c->url'>$c->title</a>";
}
echo "</ul>";
$productsPage = $pages->get("/prodotti/");
$class = $productsPage === $page ? " class='active current-menu-item'" : '';
echo "<li$class><a href='{$productsPage->url}'>$productsPage->title</a>";
echo "<ul class='sub-menu'>";
$products = $pages->find("template=product, sort=title");
$sectors = $pages->get("/settori/")->children;
$applications = $pages->get("/applicazioni/")->children;
foreach($sectors as $s) {
echo "<li><a href='$s->url'>$s->title</a><ul class='sub-menu'>";
foreach($applications as $a) {
echo "<li><a href='$a->url'>$a->title</a><ul class='sub-menu'>";
foreach($products as $p) {
if(!$p->applications->has($a)) continue;
if(!$p->sectors->has($s)) continue;
$span = $p->new == 1 ? " <span class='orange sub-menu-title'>" . $this->_('novita') . "</span>" : "";
echo "<li><a href='$p->url'>$p->title$span</a></li>";
}
echo "</ul></li>";
echo "</ul></li>";
}
echo "</ul>";
$contactsPage = $pages->get("/contatti/");
$class = $contactsPage === $page ? " class='active current-menu-item'" : '';
echo "<li$class><a href='{$contactsPage->url}'>$contactsPage->title</a>";
?>
<li>
<a href="pages/news.html">Galleries</a>
<div class="submenu-big news-menu">
<div class="row-fluid">
<div class="widget-box widget-blogposts span4">
<h4 class="widget-title">Latest</h4>
<ul>
<li class="clearfix">
<div class="widget-blogpost-avatar">
<a href="#">
<img src="img/placeholder/blogpost-placeholder-70x70.png" alt="Blogpost-1">
<span class="widget-blogpost-overlay"></span>
</a>
</div>
<div class="widget-blogpost-content">
<div class="widget-blogpost-title ">
<h5>We got a new company name!</h5>
</div>
<div class="widget-blogpost-date">
<p><a href="#">October 6, 2012</a></p>
</div>
</div>
</li>
<li class="clearfix">
<div class="widget-blogpost-avatar">
<a href="#">
<img src="img/placeholder/blogpost-placeholder-70x70.png" alt="Blogpost-1">
<span class="widget-blogpost-overlay"></span>
</a>
</div>
<div class="widget-blogpost-content">
<div class="widget-blogpost-title ">
<h5>Launching a new product today.</h5>
</div>
<div class="widget-blogpost-date">
<p><a href="#">October 6, 2012</a></p>
</div>
</div>
</li>
<li class="clearfix">
<div class="widget-blogpost-avatar">
<a href="#">
<img src="img/placeholder/blogpost-placeholder-70x70.png" alt="Blogpost-1">
<span class="widget-blogpost-overlay"></span>
</a>
</div>
<div class="widget-blogpost-content">
<div class="widget-blogpost-title ">
<h5>New CEO, John Doe starts today</h5>
</div>
<div class="widget-blogpost-date">
<p><a href="#">October 6, 2012</a></p>
</div>
</div>
</li>
</ul>
</div>
<div class="widget-box widget-category span4">
<h4 class="widget-title">Installations</h4>
<ul>
<li><a href="#">New CEO</a></li>
<li><a href="#">New Template Verendus</a></li>
<li><a href="#">Includes UI design</a></li>
<li><a href="#">10+ Widgets</a></li>
<li><a href="#">10+ Special pages</a></li>
<li><a href="#">SEO optimized</a></li>
<li><a href="#">Auto Responsive Menu</a></li>
</ul>
</div>
<div class="widget-box widget-category span4">
<h4 class="widget-title">Company</h4>
<ul>
<li><a href="#">2 Premium sliders</a></li>
<li><a href="#">Bootstrap 2.2.1</a></li>
<li><a href="#">20+ Photoshop files</a></li>
<li><a href="#">Unlimited colors</a></li>
<li><a href="#">Responsive</a></li>
<li><a href="#">100% Business Ready</a></li>
<li><a href="#">Retina Ready</a></li>
</ul>
</div>
</div>
</div>
</li>
<?php
//$blogPage = $pages->get("/blog/");
//$class = $blogPage === $page ? " class='active current-menu-item'" : '';
//echo "<li$class><a href='{$blogPage->url}'>$blogPage->title</a>";
?>
</ul>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment