2

drupal 7を使用していますが、関数theme_item_list()を使用してマルチレベルのリストアイテムを実装できるかどうかを知りたいです。以下のように:

  • アイテム1
      テスト
    • アイテム1.1
    • アイテム1.2
    • アイテム1.3
  • アイテム2
    • 項目2.1
    • 項目2.2
    • アイテム2.3
      • 項目2.3.1
      • 項目2.3.2
      • 項目2.3.3
  • アイテム3
  • 可能であれば、誰かが例を挙げて私を助けることができます。

    4

    1 に答える 1

    5

    はい、可能です。たとえば、サブリストを持つ項目ごとに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リスト アイテム内の別のリストとしてレンダリングするリスト アイテムの配列です。この関数は再帰的で、任意の数のレベルを処理できます。

    于 2012-01-06T23:26:00.330 に答える