123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- {#
- /**
- * @file
- * 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.
- * - in_preview: Whether the plugin is being rendered in preview mode.
- * - 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.
- * - 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.
- *
- * @see template_preprocess_block()
- *
- * @ingroup themeable
- */
- #}
- {%
- set classes = [
- 'block',
- 'block-' ~ configuration.provider|clean_class,
- 'block-' ~ plugin_id|clean_class,
- ]
- %}
- <div{{ attributes.addClass(classes) }}>
- {{ title_prefix }}
- {% if label %}
- <h2{{ title_attributes }}>{{ label }}</h2>
- {% endif %}
- {{ title_suffix }}
- <div class="custom-block-content">
- {% if content %}
- {% set displayed_first_paragraph = false %}
- {% for key, item in content %}
- {% if item['#markup'] is defined and not displayed_first_paragraph %}
- {# Split the content by paragraphs #}
- {% set paragraphs = item['#markup']|split('</p>') %}
- {# Display the first paragraph only #}
- <p>{{ paragraphs[0]|striptags }}</p>
- {# Add a "Voir plus" button that links to the full content page #}
- <a href="/full-content-page" class="btn btn-primary">Voir plus</a>
- {% set displayed_first_paragraph = true %}
- {% elseif not displayed_first_paragraph %}
- {{ item }}
- {% endif %}
- {% endfor %}
- {% endif %}
- </div>
- </div>
|