{# /** * @file * Default theme implementation for a field. * * To override output, copy the "field.html.twig" from the templates directory * to your theme's directory and customize it, just like customizing other * Drupal templates such as page.html.twig or node.html.twig. * * For example, for a field named 'body' displayed on the 'article' content * type, any of the following templates will override this default * implementation. The first of these templates that exists is used: * - field--body--article.html.twig * - field--article.html.twig * - field--body.html.twig * - field.html.twig * * Available variables: * - attributes: HTML attributes for the containing element. * - label_hidden: Whether to show the field label or not. * - title_attributes: HTML attributes for the title. * - label: The label for the field. * - content_attributes: HTML attributes for the content. * - 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. * - label_display: The display settings for the label. * * @see template_preprocess_field() * * @ingroup themeable */ #} {% set field_name_class = field_name|clean_class %} {% set classes = [ 'field', 'field-' ~ entity_type|clean_class ~ '--' ~ field_name_class, 'field-name-' ~ field_name_class, 'field-type-' ~ field_type|clean_class, 'field-label-' ~ label_display, label_display == 'inline' ? 'clearfix', ] %} {% set title_classes = [ 'field-label', label_display == 'visually_hidden' ? 'visually-hidden', ] %} {% if not label_hidden %} {{ label }} {% endif %} {% for item in items %} {{ item.content }} {% endfor %}