Advertisement
dajare

Dropdown toggle nav for Wolf CMS Bootstrap theme

Sep 9th, 2013
337
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.38 KB | None | 0 0
  1. @ Save this as snippet called "tbNav" :
  2.  
  3. <?php
  4. function displayChildren($page, $current, $startmenu = true, $limits = null) {
  5.     if ($limits != null && array_key_exists($page->slug(), $limits)) {
  6.         $arr = array('order' => 'position ASC, published_on DESC', 'limit' => $limits[$page->slug()]);
  7.     } else
  8.         $arr = array('order' => 'position ASC, published_on DESC');
  9.     if ($page && count($page->children()) > 0) {
  10.         echo ($startmenu) ? '<ul class="dropdown-menu">' : '';
  11.         foreach($page->children($arr) as $menu) :
  12. if (count($menu->children()) > 0 &&  $menu->level() > 0) {
  13.   $dropdown = 'dropdown';
  14.   $toggle = 'class="dropdown-toggle" data-toggle="dropdown"';
  15. } else { $dropdown = ''; $toggle = ''; }
  16.             echo '<li class="'.(in_array($menu->slug(), explode('/', $current->uri())) ? 'active ': null). $dropdown .'">'.$menu->link($menu->title(), $toggle);
  17.             displayChildren($menu, $current, true, $limits);
  18.             echo '</li>';
  19.             endforeach;
  20.         echo ($startmenu) ? '</ul>' : '';
  21.     }
  22. }
  23. ?>
  24.  
  25. @ Replace current .nav-collapse div with this code :
  26.  
  27.         <div class="nav-collapse collapse">
  28. <?php $this->includeSnippet('tbNav'); $page = $this->find('/'); ?>
  29.           <ul class="nav">
  30. <li<?php echo ($this->level() == 0) ? ' class="active"': null; ?>><?php echo $page->link($page->title); ?></li -->
  31. <?php displayChildren($page, $this, false); ?>
  32.           </ul>
  33.         </div><!--/.nav-collapse-->
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement