Same filename in this branch
  1. 10 core/modules/views/templates/views-view.html.twig
  2. 10 core/themes/olivero/templates/views/views-view.html.twig
  3. 10 core/themes/stable9/templates/views/views-view.html.twig
  4. 10 core/themes/starterkit_theme/templates/views/views-view.html.twig
  5. 10 core/themes/claro/templates/classy/views/views-view.html.twig
  6. 10 core/profiles/demo_umami/themes/umami/templates/classy/views/views-view.html.twig
Same filename and directory in other branches
  1. 8.9.x core/modules/views/templates/views-view.html.twig
  2. 9 core/modules/views/templates/views-view.html.twig

Default theme implementation for main view template.

Available variables:

  • attributes: Remaining HTML attributes for the element.
  • css_name: A CSS-safe version of the view name.
  • css_class: The user-specified classes names, if any.
  • header: The optional header.
  • footer: The optional footer.
  • rows: The results of the view query, if any.
  • empty: The content to display if there are no rows.
  • pager: The optional pager next/prev links to display.
  • exposed: Exposed widget form/info to display.
  • feed_icons: Optional feed icons to display.
  • more: An optional link to the next page of results.
  • title: Title of the view, only used when displaying in the admin preview.
  • title_prefix: Additional output populated by modules, intended to be displayed in front of the view title.
  • title_suffix: Additional output populated by modules, intended to be displayed after the view title.
  • attachment_before: An optional attachment view to be displayed before the view content.
  • attachment_after: An optional attachment view to be displayed after the view content.
  • dom_id: Unique id for every view being printed to give unique class for JavaScript.

See also

template_preprocess_views_view()

File

core/modules/views/templates/views-view.html.twig
View source
  1. {#
  2. /**
  3. * @file
  4. * Default theme implementation for main view template.
  5. *
  6. * Available variables:
  7. * - attributes: Remaining HTML attributes for the element.
  8. * - css_name: A CSS-safe version of the view name.
  9. * - css_class: The user-specified classes names, if any.
  10. * - header: The optional header.
  11. * - footer: The optional footer.
  12. * - rows: The results of the view query, if any.
  13. * - empty: The content to display if there are no rows.
  14. * - pager: The optional pager next/prev links to display.
  15. * - exposed: Exposed widget form/info to display.
  16. * - feed_icons: Optional feed icons to display.
  17. * - more: An optional link to the next page of results.
  18. * - title: Title of the view, only used when displaying in the admin preview.
  19. * - title_prefix: Additional output populated by modules, intended to be
  20. * displayed in front of the view title.
  21. * - title_suffix: Additional output populated by modules, intended to be
  22. * displayed after the view title.
  23. * - attachment_before: An optional attachment view to be displayed before the
  24. * view content.
  25. * - attachment_after: An optional attachment view to be displayed after the
  26. * view content.
  27. * - dom_id: Unique id for every view being printed to give unique class for
  28. * JavaScript.
  29. *
  30. * @see template_preprocess_views_view()
  31. *
  32. * @ingroup themeable
  33. */
  34. #}
  35. {%
  36. set classes = [
  37. dom_id ? 'js-view-dom-id-' ~ dom_id,
  38. ]
  39. %}
  40. <div{{ attributes.addClass(classes) }}>
  41. {{ title_prefix }}
  42. {{ title }}
  43. {{ title_suffix }}
  44. {% if header %}
  45. <header>
  46. {{ header }}
  47. </header>
  48. {% endif %}
  49. {{ exposed }}
  50. {{ attachment_before }}
  51. {% if rows -%}
  52. {{ rows }}
  53. {% elseif empty -%}
  54. {{ empty }}
  55. {% endif %}
  56. {{ pager }}
  57. {{ attachment_after }}
  58. {{ more }}
  59. {% if footer %}
  60. <footer>
  61. {{ footer }}
  62. </footer>
  63. {% endif %}
  64. {{ feed_icons }}
  65. </div>

Related topics