You are here

views-tree.html.twig in Views tree 8.2

Default theme implementation for an item list.

Available variables:

  • items: A list of items. Each item contains:

    • attributes: HTML attributes to be applied to each list item.
    • value: The content of the list element.
  • title: The title of the list.
  • list_type: The tag for list element ("ul" or "ol").
  • wrapper_attributes: HTML attributes to be applied to the list wrapper.
  • attributes: HTML attributes to be applied to the list.
  • empty: A message to display when there are no items. Allowed value is a string or render array.
  • context: A list of contextual data associated with the list. May contain:
    • list_style: The custom list style.

File

templates/views-tree.html.twig
View source
  1. {#
  2. /**
  3. * @file
  4. * Default theme implementation for an item list.
  5. *
  6. * Available variables:
  7. * - items: A list of items. Each item contains:
  8. * - attributes: HTML attributes to be applied to each list item.
  9. * - value: The content of the list element.
  10. * - title: The title of the list.
  11. * - list_type: The tag for list element ("ul" or "ol").
  12. * - wrapper_attributes: HTML attributes to be applied to the list wrapper.
  13. * - attributes: HTML attributes to be applied to the list.
  14. * - empty: A message to display when there are no items. Allowed value is a
  15. * string or render array.
  16. * - context: A list of contextual data associated with the list. May contain:
  17. * - list_style: The custom list style.
  18. *
  19. * @see template_preprocess_item_list()
  20. *
  21. * @ingroup themeable
  22. */
  23. #}
  24. {% import _self as views_tree %}
  25. {{ views_tree.tree(items.leaves, attributes, list_type) }}
  26. {% macro tree(items, attributes, list_type) %}
  27. {% import _self as views_tree %}
  28. {% if context.list_style %}
  29. {%- set attributes = attributes.addClass('item-list__' ~ context.list_style) %}
  30. {% endif %}
  31. {% if items or empty %}
  32. {%- if title is not empty -%}
  33. <h3>{{ title }}</h3>
  34. {%- endif -%}
  35. {%- if items -%}
  36. <{{ list_type }}{{ attributes }}>
  37. {%- for item in items -%}
  38. <li{{ item.attributes }}>{{ item.node }} {{ views_tree.tree(item.leaves, attributes, list_type) }}</li>
  39. {%- endfor -%}
  40. </{{ list_type }}>
  41. {%- else -%}
  42. {{- empty -}}
  43. {%- endif -%}
  44. {%- endif %}
  45. {% endmacro %}