2011-01-28 23 views
15

He creado un menú en Drupal 7 y he creado enlaces a páginas debajo de ese menú.¿Cómo imprimir un menú personalizado en Drupal 7?

que el nombre de mi nuevo menú "Menú del sitio"

En mi page.tpl.php donde quiero que aparezca mi menú He puesto esto en su lugar:

<?php print theme('links', menu_navigation_links('menu-site-menu')); ?> 

Después de haber limpiado mi caché y actualizado mi página, mi menú no aparece.

Estoy perplejo. Cualquier ayuda sería muy apreciada.

Respuesta

27

Berdir la respuesta es correcta. La función Drupal 7 theme_links también utiliza de manera más amplia las matrices. Por ejemplo, si le gustaría añadir otro nombre de la clase a la forma que se le codificar así:

<?php print theme('links', array('links' => menu_navigation_links('menu-site-menu'), 'attributes' => array('class'=> array('links', 'site-menu'))));?> 
9

theme() ahora recibe una matriz de argumentos. Por ejemplo:

<?php 
print theme('links', array('links' => menu_navigation_links('menu-site-menu'))); 
?> 
+0

Gracias por su respuesta. Desafortunadamente no resolvió mi problema. Investigaré un poco más. Gracias de nuevo. – 404error

+0

Bueno, ¿estás seguro de que tu argumento para menu_navigation_links() es correcto y que devuelve tu menú? Intente imprimir eso directamente con debug() o dpm() (si tiene devel.module instalado). Vea también http://api.drupal.org/api/drupal/modules--system--page.tpl.php/7/source, busque el menú principal, así es como el núcleo muestra el menú. – Berdir

0

Bueno, es poco confuso de las soluciones anteriores al menú de impresión. Pero por debajo de código que funcionó para mí, espero que esto funcionará para todos ustedes,

$search_menu_name = "menu-search-box-menu"; 

    print theme('links', array('links' => menu_navigation_links($search_menu_name), 'attributes' => array('id' => $search_menu_name, 'class'=> array('links', 'inline')))); 

El código anterior es así, "menú-search-box-menú" es mi menú personalizado Nombre/ID. Puede encontrarlo en ese enlace de edición de menú particular.

Disfrútalo. :)

Cuestiones relacionadas