You are here

block.html.twig in Drupal 10

Olivero's implementation to display a block.

Available variables:

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

Related topics