Fóruns

Início » Liferay Portal » Português

Visualização combinada Visão plana Exibição em árvore
Tópicos [ Anterior | Próximo ]
toggle
Marcelo Guimarães Melo
3 Níveis de Menu
10 de Fevereiro de 2011 10:27
Resposta

Marcelo Guimarães Melo

Ranking: Expert

Mensagens: 250

Data de entrada: 29 de Setembro de 2008

Mensagens 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
Thiago Leão Moreira
RE: 3 Níveis de Menu
15 de Fevereiro de 2011 17:02
Resposta

Thiago Leão Moreira

LIFERAY STAFF

Ranking: Liferay Legend

Mensagens: 1429

Data de entrada: 10 de Outubro de 2007

Mensagens 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
RE: 3 Níveis de Menu
15 de Março de 2012 09:52
Resposta

Juliano Pacheco

Ranking: New Member

Mensagens: 3

Data de entrada: 12 de Março de 2012

Mensagens 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

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


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

 1
 2#if ($nav_child.hasChildren())
 3   <ul class="child-menu">
 4      #foreach ($nav_grand_children in $nav_child.getChildren())
 5         #if ($nav_grand_children.isSelected())
 6        <li class="selected">
 7     #else
 8        <li>
 9     #end
10        <a href="$nav_grand_children.getURL()" $nav_grand_children.getTarget()>$nav_grand_children.getName()</a>
11     </li>
12      #end
13   </ul>
14#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