You are here

block.html.twig in Drupal 9

Default theme implementation to display a block.

Available variables:

  • plugin_id: The ID of the block implementation.
  • label: The configured label of the block if visible.
  • configuration: A list of the block's configuration values.
    • label: The configured label for the block.
    • label_display: The display settings for the label.
    • provider: The module or other provider that provided this block plugin.
    • Block plugin specific settings will also be stored here.
  • content: The content of this block.
  • attributes: array of HTML attributes populated by modules, intended to be added to the main container tag of this template.

    • id: A valid HTML ID and guaranteed unique.
  • title_attributes: Same as attributes, except applied to the main title tag that appears in the template.
  • content_attributes: Same as attributes, except applied to the main content tag that appears in the template.
  • title_prefix: Additional output populated by modules, intended to be displayed in front of the main title tag that appears in the template.
  • title_suffix: Additional output populated by modules, intended to be displayed after the main title tag that appears in the template.

File

core/themes/bartik/templates/block.html.twig
View source
  1. {#
  2. /**
  3. * @file
  4. * Default theme implementation to display a block.
  5. *
  6. * Available variables:
  7. * - plugin_id: The ID of the block implementation.
  8. * - label: The configured label of the block if visible.
  9. * - configuration: A list of the block's configuration values.
  10. * - label: The configured label for the block.
  11. * - label_display: The display settings for the label.
  12. * - provider: The module or other provider that provided this block plugin.
  13. * - Block plugin specific settings will also be stored here.
  14. * - content: The content of this block.
  15. * - attributes: array of HTML attributes populated by modules, intended to
  16. * be added to the main container tag of this template.
  17. * - id: A valid HTML ID and guaranteed unique.
  18. * - title_attributes: Same as attributes, except applied to the main title
  19. * tag that appears in the template.
  20. * - content_attributes: Same as attributes, except applied to the main content
  21. * tag that appears in the template.
  22. * - title_prefix: Additional output populated by modules, intended to be
  23. * displayed in front of the main title tag that appears in the template.
  24. * - title_suffix: Additional output populated by modules, intended to be
  25. * displayed after the main title tag that appears in the template.
  26. *
  27. * @see template_preprocess_block()
  28. *
  29. * @ingroup themeable
  30. */
  31. #}
  32. {%
  33. set classes = [
  34. 'block',
  35. 'block-' ~ configuration.provider|clean_class,
  36. 'block-' ~ plugin_id|clean_class,
  37. ]
  38. %}
  39. <div{{ attributes.addClass(classes) }}>
  40. {{ title_prefix }}
  41. {% if label %}
  42. <h2{{ title_attributes }}>{{ label }}</h2>
  43. {% endif %}
  44. {{ title_suffix }}
  45. {% block content %}
  46. <div{{ content_attributes.addClass('content') }}>
  47. {{ content }}
  48. </div>
  49. {% endblock %}
  50. </div>

Related topics