Como exibir submenus separadamente da árvore de menus? [fechadas]


8

Estou tentando exibir todos os submenus do terceiro nível para um item de menu em uma página, com cada um em seu próprio bloco de exibição. Eu tentei o módulo Bloco de menus, mas ele parece funcionar apenas para a trilha ativa, o que significa que eu só posso exibir todos os menus de segundo e terceiro níveis como uma unidade, em vez de apenas os menus de terceiro nível como unidades separadas.

Além do módulo Menu Block, também tentei acessar a árvore de menus diretamente com este código.

      $main = menu_navigation_links('main-menu', '2');
      echo theme('links__system_main_menu', array(
      'links' => $main,
      'attributes' => array(
      'id' => 'main-menu',
      'class' => array('links')
    ),
  ));
?>

Aqui está a estrutura do menu:

- Parent Menu 1
- Parent Menu 2
  - Child Menu A
    - SubChild Menu 1A
    - SubChild Menu 2A
    - SubChild Menu 3A    
- Child Menu B
  - SubChild Menu 1B
  - SubChild Menu 2B
  - SubChild Menu 3B

O que eu gostaria de exibir quando o Menu pai 2 é selecionado:

Bloco 1: Menu Sub-criança 1A | Menu Sub-filho 2A | Menu SubChild 3A

Bloco 2: Menu Sub-Criança 1B | Menu Sub-filho 2B | Menu SubChild 3B

Qualquer ajuda no caminho certo para exibir submenus separados da árvore seria muito apreciada.


Você precisa fazer alguma busca direta no banco de dados.
Niksmac 18/04/12

Você precisa definir a fonte do seu menu secundário. Embora seja para o Drupal 6, este vídeo me ajudou muito a configurá-lo para o Drupal 7: lullabot.com/node/444/play
Tim

Os "Menu Infantil A" e "Menu Infantil B" não são realmente itens de menu (ou seja, servem apenas como títulos ou divisores)? Além disso, por que exatamente você deseja / precisa dividir os dois submenus em blocos separados? A melhor / mais fácil solução pode estar fora do que você está tentando fazer aqui, portanto, ajudaria a saber qual é o seu objetivo final real, para que possamos considerar outras opções.
sheena_d

Acabei fazendo um db direta buscar:
user1240408

O Menu filho A e o Menu filho B são ambos itens de menu. Estou tentando exibir todos os submenus do menu filho A em um bloco, todos os submenus do menu filho B em outro bloco, etc., todos em uma página. É uma página de resumo para todas as diferentes seções do Menu Filho.
user1240408

Respostas:


5

Eu acho que a melhor maneira de fazer isso é usar o módulo de bloco de menus . Aqui está uma citação sobre isso (na página do projeto do módulo):

... você já usou o recurso de links do menu Principal e Secundário no seu tema e se perguntou "como diabos eu mostro algum item do menu mais profundo do que isso?"

Bem, é isso que este módulo faz. Ele fornece blocos configuráveis ​​de árvores de menus, começando com qualquer nível de qualquer menu. E mais!

Portanto, se você estiver usando apenas o recurso de links do menu principal do seu tema, poderá adicionar e configurar um bloco "Menu principal (níveis 2+)". Esse bloco aparecerá quando você estiver em uma das páginas do menu Principal e mostrará a árvore de menus para o 2º nível (e mais profundo) do menu Principal e se expandirá à medida que você percorre a árvore. Você também pode limitar a profundidade da árvore do menu (por exemplo, "Menu principal (níveis 2-3)") e / ou expandir todos os submenus filho (por exemplo, "Menu principal (níveis expandidos 2+)").


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.