【发布时间】:2026-02-04 01:50:01
【问题描述】:
我正在尝试在 drupal 中设置自定义菜单的样式。
我已经成功地设置了显示背景图像的样式,但问题是菜单项标题仍然显示。所以我得到了一张漂亮的图片,上面写满了文字。
我可以使用模板函数来格式化自定义菜单并从超链接中删除文本部分吗?
我在主链接上做了类似的事情(见下文),但我可以通过一些帮助来弄清楚如何在自定义菜单上这样做。
function primary_links_add_icons() {
$links = menu_primary_links();
$level_tmp = explode('-', key($links));
$level = $level_tmp[0];
$output = "<ul class=\"links-$level\">\n";
if ($links) {
foreach ($links as $link) {
$link = l($link['title'], $link['href'], $link['attributes'], $link['query'], $link['fragment']);
$cssid = str_replace(' ', '_', strip_tags($link));
$link = preg_replace('#(<a.*?>).*?(</a>)#', '$1$2', $link);
$output .= '<li id="'.$cssid.'">' . $link .'</li>';
};
$output .= '</ul>';
}
return $output;
}
然后在 page.tpl.php 中调用这个
print primary_links_add_icons();
感谢您的帮助!
【问题讨论】: