2013-02-11 36 views
0

我想在一個hook_block_view函數內用theme_item_list創建一個列表。用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

您正在使用Drupal的6或7? – Clive 2013-02-12 00:26:36

+0

此版本的theme_item_list函數適用於Drupal 6.代碼似乎沒問題。 – 2013-02-12 17:39:51

回答

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') 
    ), 
), 
); 
0

這將在Drupal的工作6

$block['content'] = theme_item_list($items , $title = NULL, $type = 'ul', $attributes = array('id' => 'contact-us')) ;

請你注意,你可以添加任何有效的屬性添加到$ attributes array()。

工作實例上的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