drupal 7を使用していますが、関数theme_item_list()を使用してマルチレベルのリストアイテムを実装できるかどうかを知りたいです。以下のように:
- テスト
- アイテム1.1
- アイテム1.2
- アイテム1.3
- 項目2.1
- 項目2.2
- アイテム2.3
- 項目2.3.1
- 項目2.3.2
- 項目2.3.3
可能であれば、誰かが例を挙げて私を助けることができます。
drupal 7を使用していますが、関数theme_item_list()を使用してマルチレベルのリストアイテムを実装できるかどうかを知りたいです。以下のように:
可能であれば、誰かが例を挙げて私を助けることができます。
はい、可能です。たとえば、サブリストを持つ項目ごとにdata
とのキーを持つ配列を渡すと、次のようになります。children
$items = array(
array(
'data' => 'Item 1',
'children' => array(
array(
'data' => 'Item 1.1',
'children' => array(
'Item 1.1.1',
'Item 1.1.2'
)
),
array(
'data' => 'Item 1.2',
'children' => array(
'Item 1.2.1',
'Item 1.2.2'
)
)
)
),
array(
'data' => 'Item 2',
'children' => array(
// etc...
)
)
);
$output = theme('item_list', array('items' => $items));
data
キーはリスト アイテムの内容を表し、そのchildren
リスト アイテム内の別のリストとしてレンダリングするリスト アイテムの配列です。この関数は再帰的で、任意の数のレベルを処理できます。