| 
                              
                                  
                               | 
                              
                                  19.12.2014, 18:18 
                                 
                                 
                                    
                                    
                                    
                                    
                                  
                               | 
                            
                            
                            
                               | 
                               
                                Гость 
                                
                                Гость 
                                
                                
                                 
                                
                                
                                
                               | 
                              
                                Здравствуйте! 
Делаю сайтик. Хочу использовать класс навигации для создания многоуровневого меню на сайте. 
сделал первый уровень вот так:Код:            <ul class="list"> 
            <? foreach ($nc_core->nav->where('Checked', '1')->get_sub(4) as $sub): ?> 
                <? if ($sub->active): ?> 
                <li class="item active"><a href="<?= $sub->url ?>"><?= $sub->name ?></a></li> 
                <? else: ?> 
                <li class="item"><a href="<?= $sub->url ?>"><?= $sub->name ?></a><?=$this->partial('topmenu');?></li> 
                <? endif ?> 
            <? endforeach ?> 
			</ul>   
Как здесь сделать вывод меню второго уровня (т.е. подразделов) не понимаю. В документации ничего по этому поводу нет, а в php несилён. 
Подскажите, плиз. 
Нужный html-код:Код: 
<ul class="list"> 
				<li class="item active"><a href="#">Пункт1</a></li> 
				<li class="item"><a href="#">Пункт2</a></li> 
				<li class="item"><a href="#">Пункт3</a></li> 
				<li class="item"><a href="#">Пункт4</a></li> 
				<li class="item"><a href="#">Пункт5</a> 
					<ul class="submenu"> 
						<li><a href="#">Пункт51</a></li> 
						<li class="active"><a href="#">Пункт52</a></li> 
						<li><a href="#">Пункт53</a></li> 
						<li><a href="#">Пункт54</a></li> 
					</ul> 
				</li> 
				<li class="item"><a href="#">Пункт6</a></li> 
				<li class="item"><a href="#">Пункт7</a></li> 
			</ul>
  
                                
                               | 
                            
                            
                            
   | 
  
      
   | 
  
      19.12.2014, 18:53 
     
     
        
        
        
        
      
   | 
   | 
   
    Гость 
    
    Гость 
    
    
     
    
    
    
   | 
  
    Ошибся! 
В первом коде, в 6-ой строке  
Код:<?=$this->partial('topmenu');?></li>  
лишнее 
 
Это я пробовал выводить второй уровень, шаблон которого был прописан в другом доп.шаблоне.  
можоно ли как-то выводить несколько уровней вложенности в одном дополнительном шаблоне?
    
   | 
   | 
  
      
   | 
  
      19.12.2014, 23:58 
     
     
        
        
        
        
      
   | 
   | 
   
    Игорь 
    
    
    
    Игорь Мишарин 
      
    Зарегистрирован:  2011-11-20 
    Сообщений: 482 
    
   | 
  
    А чем не устраивает nc_browse_sub или s_browse_sub?
    
 
 Stark 
   | 
   | 
  
      
   | 
  
      21.12.2014, 09:04 
     
     
        
        
        
        
      
   | 
   | 
   
    Гость 
    
    Гость 
    
    
     
    
    
    
   | 
  
    С этими функциями всё понятно и устраивает. Но хотелось бы понять как это реализовать с помощью класса навигации в доп. шаблонах макетов.
    
   | 
   | 
  
      
   | 
  
      08.01.2015, 00:49 
     
     
        
        
        
        
      
   | 
   | 
   
    Алексей 
    
    
    
    
     
    Зарегистрирован:  2014-05-02 
    Сообщений: 2 
    
   | 
  
    Доп. шаблон у меня такой (left_menu_materials): 
 
<? 
$Subdivisions = $nc_core->nav->sub($this->value('sub'))->get(); 
if (count($Subdivisions)) { 
 
    echo "<ul ".opt($this->value('first'), "class='menu'").">"; 
     
    foreach ($Subdivisions as $sub) { 
        $NextLevel = $this->partial('left_menu_materials', array('sub' => $sub->id, 'first' => false)); 
        if ($sub->active) echo "<li class='left_menu_active'>$sub->name $NextLevel</li>"; 
        else              echo "<li><a href='$sub->url' title='$sub->name'>$sub->name</a>$NextLevel</li>"; 
    } 
     
    echo "</ul>"; 
} 
?> 
 
вызов из макета: 
 
echo $this->partial('left_menu_materials', array('sub' => 421, 'first' => true)); 
 
т.е. просто вложенный вызов шаблона для следующего уровня
    
   | 
   | 
  
      
   | 
  
      23.10.2015, 21:31 
     
     
        
        
        
        
      
   | 
   | 
   
    fazli 
    
    
    
    ymv 
      
    Зарегистрирован:  2011-02-27 
    Сообщений: 28 
    
   | 
  
    С nc_browse_sub или s_browse_sub нельзя выводить выборочно нужный раздел, 
по крайней мере не получилось. 
А так можно настроить выборку нужных разделов для вывода: 
Код:<ul class='main-menu'> 
    <? foreach ($nc_core->nav->where_in("id", array(3,5))->get_sub() as $sd): ?> 
        <? if ($sd->active): ?> 
            <li><b><?= $sd->name ?></b></li> 
        <? else: ?> 
            <li><a href='<?= $sd->url ?>'><?= $sd->name ?></a></li> 
        <? endif ?> 
    <? endforeach ?> 
<ul>   
Только не понятно как тут выводить двухуровневое меню.
    
 
 fazli 
   |