Fórum

3 Níveis de Menu

thumbnail
Marcelo Guimarães Melo, modificado 13 Anos atrás.

3 Níveis de Menu

Regular Member Postagens: 248 Data de Entrada: 29/09/08 Postagens Recentes
Pessoal,

Eu gostaria de saber se para versão 6.0.5 do liferay já existe algum tema que trabalha com 3 níveis de menu.
Pois usando o tema classic ele exibe na navegação somente os 2 primeiros níveis, o terceiro ele ignora.

Obrigado,

Marcelo Guimarães
thumbnail
Thiago Leão Moreira, modificado 13 Anos atrás.

RE: 3 Níveis de Menu

Liferay Legend Postagens: 1449 Data de Entrada: 10/10/07 Postagens Recentes
Dae Marcelo,

Não sei se existe já desenvolvido mas não é complicado fazer um com 3 níveis. basta que você verifique se o objeto que representa a página no template Velocity ($nav_items) possue filhos (hasChildren() e getChildren()) e iterar sobre eles.
Juliano Pacheco, modificado 12 Anos atrás.

RE: 3 Níveis de Menu

New Member Postagens: 3 Data de Entrada: 12/03/12 Postagens Recentes
Bom dia encontrei esta questão que me deu uma luz na solução.

Em nosso projeto nos implementamos um novo theme, onde precisavamos exibir 3 níveis de de menu.
Então dentro deste no arquivo navigation.vm , logo após o trecho onde ele escreve o link de nível 2

<a href="$nav_child.getURL()" $nav_child.gettarget()>$nav_child.getName()</a>


adicionei um trecho para escrever o nível três


#if ($nav_child.hasChildren())
   <ul class="child-menu">
      #foreach ($nav_grand_children in $nav_child.getChildren())
         #if ($nav_grand_children.isSelected())
	    <li class="selected">
	 #else
	    </li><li>
	 #end
	    <a href="$nav_grand_children.getURL()" $nav_grand_children.gettarget()>$nav_grand_children.getName()</a>
	 </li>
      #end
   </ul>
#end


Desta forma todos os menus de nivel 3 são exibidos.
Outra idéia seria é implementar uma solução recursiva, porém em nosso caso não havia necessidade.

Att