a10384dd6e4abf4cc02aa7f933b95e51906d1858
[yaffs-website] / web / core / themes / stable / templates / field / field.html.twig
1 {#
2 /**
3  * @file
4  * Theme override for a field.
5  *
6  * To override output, copy the "field.html.twig" from the templates directory
7  * to your theme's directory and customize it, just like customizing other
8  * Drupal templates such as page.html.twig or node.html.twig.
9  *
10  * Instead of overriding the theming for all fields, you can also just override
11  * theming for a subset of fields using
12  * @link themeable Theme hook suggestions. @endlink For example,
13  * here are some theme hook suggestions that can be used for a field_foo field
14  * on an article node type:
15  * - field--node--field-foo--article.html.twig
16  * - field--node--field-foo.html.twig
17  * - field--node--article.html.twig
18  * - field--field-foo.html.twig
19  * - field--text-with-summary.html.twig
20  * - field.html.twig
21  *
22  * Available variables:
23  * - attributes: HTML attributes for the containing element.
24  * - label_hidden: Whether to show the field label or not.
25  * - title_attributes: HTML attributes for the title.
26  * - label: The label for the field.
27  * - multiple: TRUE if a field can contain multiple items.
28  * - items: List of all the field items. Each item contains:
29  *   - attributes: List of HTML attributes for each item.
30  *   - content: The field item's content.
31  * - entity_type: The entity type to which the field belongs.
32  * - field_name: The name of the field.
33  * - field_type: The type of the field.
34  * - label_display: The display settings for the label.
35  *
36  * @see template_preprocess_field()
37  */
38 #}
39 {%
40   set title_classes = [
41     label_display == 'visually_hidden' ? 'visually-hidden',
42   ]
43 %}
44
45 {% if label_hidden %}
46   {% if multiple %}
47     <div{{ attributes }}>
48       {% for item in items %}
49         <div{{ item.attributes }}>{{ item.content }}</div>
50       {% endfor %}
51     </div>
52   {% else %}
53     {% for item in items %}
54       <div{{ attributes }}>{{ item.content }}</div>
55     {% endfor %}
56   {% endif %}
57 {% else %}
58   <div{{ attributes }}>
59     <div{{ title_attributes.addClass(title_classes) }}>{{ label }}</div>
60     {% if multiple %}
61       <div>
62     {% endif %}
63     {% for item in items %}
64       <div{{ item.attributes }}>{{ item.content }}</div>
65     {% endfor %}
66     {% if multiple %}
67       </div>
68     {% endif %}
69   </div>
70 {% endif %}