如何使用 theme_item_list() 在 drupal7 中实现多级列表?

发布于 2024-12-25 11:44:00 字数 298 浏览 1 评论 0原文

我使用的是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
  • 如果可能的话可以有人帮我举个例子。

    Im using drupal 7, I would like to know whether i can use the function theme_item_list() to implement multi-level list items. As below:

  • Item 1
      test

    • Item 1.1
    • Item 1.2
    • Item 1.3
  • Item 2
    • Item 2.1
    • Item 2.2
    • Item 2.3
      • Item 2.3.1
      • Item 2.3.2
      • Item 2.3.3
  • Item 3
  • If possible can anybody help me with an example.

    如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

    扫码二维码加入Web技术交流群

    发布评论

    需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

    评论(1

    走走停停 2025-01-01 11:44:00

    是的,如果您为具有子列表的每个项目传入一个带有 datachildren 键的数组,例如:

    $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 key 表示列表项的内容,children 是一个列表项数组,在该列表项中呈现为单独的列表。该函数是递归的,可以处理任意数量的级别。

    Yes it's possible, if you pass in an array with keys of data and children for each item that has a sub-list, for example:

    $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));
    

    The data key represents the contents of the list item, children is an array of list items to render as a separate list within that list item. The function is recursive and can handle any number of levels.

    ~没有更多了~
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文