滚动
菜单主题化 (template.php)
论坛
你好,在文件 template.php 中插入以下代码
function 主题名称_menu_link__main_menu(array $variables) {
$element = $variables['element'];
$sub_menu = '';
if ($element['#below']) {
$sub_menu = drupal_render($element['#below']);
}
$output = '<span>'. l($element['#title'], $element['#href'], $element['#localized_options']) .'</span>';
return '<li' . drupal_attributes($element['#attributes']) . '>' . $output . $sub_menu . "</li>\n";
}
但是 <span> 标签没有出现,
function 主题名称_links__system_main_menu(&$vars) {
foreach ($vars['links'] as &$link) {
$link['title'] = '<span>' . $link['title'] . '</span>';
$link['html'] = TRUE;
}
return theme_links($vars);
}
这样的结构可以工作,但包裹不在需要的位置,即在标签 <a><span></span></a> 内。
请问,第一种结构不工作的原因是什么?