我想修改我創建的Drupal 7主題中的HTML輸出。Drupal 7:修改菜單HTML輸出?
基本上,而不是< li> s僅包含純文本< a> s,我想在< a>中包含一些額外的HTML。
我知道可以修改Drupal中菜單創建的HTML。我可以在page.tpl.php中看到以下呼叫:
<?php print theme('links__system_main_menu', array(
'links' => $main_menu,
'attributes' => array(
'id' => 'main-menu',
'class' => array('links', 'clearfix'),
),
'heading' => array(
'text' => t(''),
'level' => 'h2',
'class' => array('element-invisible'),
),
)); ?>
它顯然調用主題函數,它創建輸出。修改輸出的一種方法是修改theme.inc中的theme_links函數,對嗎?
http://api.drupal.org/api/drupal/includes--theme.inc/function/theme_links
我也知道,你可以掛上了鉤在template.php文件來覆蓋它創建的HTML功能。我無法弄清楚如何創建實際的覆蓋功能。請有人指出我正確的方向嗎?
很酷,正是我所需要的。謝謝! – 2011-03-06 04:35:35
接受的答案使用Drupal 6中的theme_menu_item。Drupal 7中的等價物是theme_menu_item http://api.drupal.org/api/drupal/includes--menu.inc/function/theme_menu_link/7 – Rimian 2011-11-21 09:16:31
@Rimian Drupal 7使用theme_menu_link而不是theme_menu_item。 – 2013-03-12 10:46:26