Question

i'm new to drupal, but i have a good knowledge about php, and html/css. I have this drupal site where the primary menu has 2 levels.

In the page.tpl.php of the theme is see this line:

<div class="pr-menu">
  <?php print theme('links', $primary_links, array('class' => 'links primary-links')) ?>
</div>

the $primary_links variable seems to only hold an array with the first level menu items. Now my question is: what is the best way to load the entire primary menu as an unordered list in stead of the first level primary links that are displayed now?

Was it helpful?

Solution 2

Finally found some kind of solution, after looking a bit trough the existing functions in menu.inc

For anyone interested, here is the code to put in your theme's page.tpl.php file, instead of the default primary link code:

<div class="pr-menu">
  <?php print menu_tree('primary-links'); ?>
</div>

menu_tree() will return the primary menu as a multi level html-list with all the most important properties (first, last, active,...) accessible trough css classes.

OTHER TIPS

Nice, see the Drupal 6 code here, I believe it will also pay attention to what is set as the primary menu source (in /admin/build/menu/settings ):

http://drupal.org/node/68578

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top