2012-01-20 118 views
0

在許多網站上,您可以看到頁腳中所有鏈接的導航欄。但是,當你有很多鏈接時,你想讓一些項目在同一列中。 (例如:每12項分項目在6列中顯示)頁腳中的Drupal導航

您可以使用:

<?php print(render(menu_tree_output(menu_tree_all_data('main-menu')))); ?> 

但你得到嵌套的UI元素。

有沒有辦法讓DIV中的所有鏈接? (沒有嵌套)

例在Drupal提出: http://www.louvre.fr/

+0

爲什麼不將樣式'ul'設置爲'div'?將顯示更改爲阻止,列出樣式爲none等等...... –

+0

是的,這是一種可能性,但我必須使用很多HTML,這對此不是必需的...... AND,div的逗留嵌套。但是,這不是一個很大的問題,我猜... –

回答

0

的UI是由你的主題模板文件生成。

您可以改爲使用視圖。我會在視圖中生成列表。這允許我將輸出格式化爲ul的div intead。

這個視圖,我會然後使它成爲一個塊,然後將其放置在頁腳上。

希望這有助於不恢復。

+0

你可以在視圖中使用導航項?節點,分類,但導航? –

+0

是的,你可以使用視圖來輸出鏈接,然後格式化輸出爲div。 –

+0

沒有可能在視圖中獲得導航項目我認爲... 這是什麼可以在視圖中: 文件,修訂,內容,分類,用戶,本地來源,主題 –

0

我做了一些代碼,做我想要的。在頁腳中顯示導航(2級)。如果有人有更好的方式來做到這一點,讓我知道!

$my_menu = menu_tree_all_data('main-menu'); 
$my_array = array(); 

foreach($my_menu as $my_item){ 
    $my_array[] = l(t($my_item['link']['link_title']), $my_item['link']['link_path'], array('attributes' => array('class' => array('level-1')))); 
    foreach($my_item['below'] as $my_below){ 
     $my_array[] = l(t($my_below['link']['link_title']), $my_below['link']['link_path'], array('attributes' => array('class' => array('level-2')))); 
    } 
} 

$my_totalcount = count($my_array); 
$my_count = 0; 
$my_column = 1; 
$my_columns = 6; 
$my_percolumn = ceil($my_totalcount/$my_columns); 

foreach($my_array as $my_item){ 

    if($my_count == 0) echo '<div class="footer-column footer-column-'. $my_column++ .'">'; 
    echo $my_item; 
    $my_count++; 

    if($my_count == $my_percolumn){ 
     echo '</div>'; 
     $my_count = 0; 
    } 
}