我正在尝试在hook_block_view函数中创建一个包含theme_item_list的列表。
$items = array();
$items[] = array('data' => l('Training', 'training'));
$items[] = array('data' => l('Publications', 'publications'));
$items[] = array('data' => l('Conferences', 'conferences'));
$items[] = array('data' => l('Information service', 'information-service'));
$block['content'] = theme('item_list', array('items' => $items), NULL, 'ul', array('id' => 'contact-us'));
我希望输出为:
<ul id='contact-us'>
<li><a href='/training>Training</a></li>
...
但返回输出时缺少类:
<ul>
<li><a href='/training>Training</a></li>
...
我想我已经准确地按照了drupal.org上的示例,但是它没有用?感谢。
答案 0 :(得分:1)
<强>解决方案:强>
我收到的评论让我相信Drupal 7中的功能与以前版本中的功能不同。看来我正在查看版本6的示例。这适用于7:
array(
'list' => array(
'#theme' => 'item_list',
'#type' => 'ul',
'#attributes' => array('id' => 'contact-us'),
'#items' => array(
'item_1' => l('Training', 'training'),
'item_2' => l('Publications', 'publications'),
'item_3' => l('Conferences', 'conferences'),
'item_4' => l('Information service', 'information-service')
),
),
);
答案 1 :(得分:0)
这将适用于drupal 6
$block['content'] = theme_item_list($items , $title = NULL, $type = 'ul', $attributes = array('id' => 'contact-us') ) ;
请注意,您可以将任何有效属性添加到$ attributes数组()。
drupal 6上的工作示例:
$block['content'] = theme_item_list($items , $title = NULL, $type = 'ul', $attributes = Array( 'id' => 'contact-us', 'class' => 'some-class', 'style' => 'color:red')) ;
文档:https://api.drupal.org/api/drupal/includes!theme.inc/function/theme_item_list/6