From caf80a58a5b6ce8bf0e0d1efad00c72db86204be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?benjamin=20melan=C3=A7on?= Date: Thu, 1 Aug 2019 23:27:58 -0400 Subject: [PATCH] Override field for node images to set necessary classes --- .../field--node--field-image.html.twig | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 web/themes/custom/geofresco/src/templates/elements/field--node--field-image.html.twig diff --git a/web/themes/custom/geofresco/src/templates/elements/field--node--field-image.html.twig b/web/themes/custom/geofresco/src/templates/elements/field--node--field-image.html.twig new file mode 100644 index 0000000..0a0efb1 --- /dev/null +++ b/web/themes/custom/geofresco/src/templates/elements/field--node--field-image.html.twig @@ -0,0 +1,50 @@ +{# +/** + * @file + * Theme override for a image fields on nodes, always a featured image. + * + * Available variables: + * - attributes: HTML attributes for the containing element. + * - title_attributes, label, label_display: Not used; we force label_hidden. + * - multiple: TRUE if a field can contain multiple items. + * - items: List of all the field items. Each item contains: + * - attributes: List of HTML attributes for each item. + * - content: The field item's content. + * - entity_type: The entity type to which the field belongs. + * - field_name: The name of the field. + * - field_type: The type of the field. + * + * @see template_preprocess_field() + */ +#} +{# Child templates can specify classes to be added to items. #} +{% set item_classes = item_classes ?? ['nadahuh'] %} +{# Child templates can specify whether items should be wrapped. #} +{% set use_item_wrapper = use_item_wrapper is defined ? use_item_wrapper : false %} + +{% macro render_item(item, item_classes, use_item_wrapper) %} + {% + set item = item|merge({ + 'attributes': item.attributes.addClass(item_classes) + }) + %} + {% if use_item_wrapper %} + {{ item.content }} + {% else %} + {% import "@bulma/macros/renderables.html.twig" as renderables %} + {{ renderables.merge_attributes(item.attributes, item, 'content') }} + {% endif %} +{% endmacro render_item %} +{% import _self as helpers %} + +{% if multiple %} + + {% for item in items %} + {{ helpers.render_item(item, item_classes, use_item_wrapper) }} + {% endfor %} + +{% else %} + {% for item in items %} + {{ helpers.render_item(item, item_classes, use_item_wrapper) }} + {% endfor %} +{% endif %}