¿Cómo visualizo submenús por separado de su árbol de menú? [cerrado]

8

Estoy tratando de mostrar todos los submenús de tercer nivel para un elemento de menú en una página, con cada uno en su propio bloque de visualización. He probado el módulo de Bloqueo de menú, pero parece que solo funciona para la ruta activa, lo que significa que solo puedo mostrar todos los menús de segundo y tercer nivel como una unidad en lugar de solo los menús de tercer nivel como unidades separadas.

Además del módulo Bloque de menús, también intenté acceder al árbol de menús directamente con 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')
    ),
  ));
?>

Aquí está la estructura del menú:

- 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

Lo que me gustaría mostrar cuando se selecciona el Menú principal 2:

Bloque 1: SubChild Menú 1A | Menú secundario 2A | SubChild Menu 3A

Bloque 2: SubChild Menú 1B | Menú secundario 2B | SubChild Menu 3B

Cualquier ayuda sobre la forma correcta de mostrar submenús separados de su árbol sería muy apreciada.

usuario1240408
fuente
Necesita hacer una búsqueda directa de db.
niksmac
Tienes que configurar la fuente de tu menú secundario. Aunque es para Drupal 6, este video me ayudó mucho a configurarlo para Drupal 7: lullabot.com/node/444/play
Tim
¿El "Menú secundario A" y el "Menú secundario B" no son realmente elementos del menú (es decir, solo sirven como encabezados o divisores)? Además, ¿por qué exactamente quiere / necesita dividir los dos submenús en bloques separados? La mejor / más fácil solución puede estar fuera de lo que está tratando de hacer aquí, por lo que sería útil saber cuál es su objetivo final real para que podamos considerar otras opciones.
sheena_d
Terminé haciendo una búsqueda directa de db:
user1240408
El menú secundario A y el menú secundario B son elementos del menú. Estoy tratando de mostrar todos los submenús del menú secundario A en un bloque, todos los submenús del menú secundario B en otro bloque, etc., todo en una página. Es una página de resumen para todas las diferentes secciones del menú secundario.
user1240408

Respuestas:

5

Creo que la mejor manera de hacerlo es usar el módulo de bloque de menú . Aquí hay una cita al respecto (de la página del proyecto del módulo):

... ¿alguna vez ha utilizado la función de enlaces del menú Principal y Secundario en su tema y se preguntó "cómo diablos puedo mostrar algún elemento de menú más profundo que eso?"

Bueno, eso es lo que hace este módulo. Proporciona bloques configurables de árboles de menú que comienzan con cualquier nivel de cualquier menú. ¡Y más!

Entonces, si solo está utilizando la función de enlaces del menú principal de su tema, puede agregar y configurar un bloque de "Menú principal (niveles 2+)". Ese bloque aparecería una vez que estuvieras en una de las páginas del menú principal y mostraría el árbol del menú para el segundo nivel (y más profundo) de tu menú principal y se expandiría a medida que atraviesas el árbol. También puede limitar la profundidad del árbol del menú (por ejemplo, "Menú principal (niveles 2-3)") y / o expandir todos los submenús secundarios (por ejemplo, "Menú principal (niveles expandidos 2+)").

Manuel García
fuente