5 changed files with 227 additions and 2 deletions
@ -0,0 +1,81 @@
|
||||
{# |
||||
/** |
||||
* @file |
||||
* Theme override 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. |
||||
* |
||||
* Instead of overriding the theming for all fields, you can also just override |
||||
* theming for a subset of fields using |
||||
* @link themeable Theme hook suggestions. @endlink For example, |
||||
* here are some theme hook suggestions that can be used for a field_foo field |
||||
* on an article node type: |
||||
* - field--node--field-foo--article.html.twig |
||||
* - field--node--field-foo.html.twig |
||||
* - field--node--article.html.twig |
||||
* - field--field-foo.html.twig |
||||
* - field--text-with-summary.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. |
||||
* - 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. |
||||
* - label_display: The display settings for the label. |
||||
* |
||||
* |
||||
* @see template_preprocess_field() |
||||
*/ |
||||
#} |
||||
{% |
||||
set classes = [ |
||||
'field', |
||||
'field--name-' ~ field_name|clean_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 label_hidden %} |
||||
{% if multiple %} |
||||
<div{{ attributes.addClass(classes, 'field__items') }}> |
||||
{% for item in items %} |
||||
<div{{ item.attributes.addClass('field__item') }}> ({{ item.content }})</div> |
||||
{% endfor %} |
||||
</div> |
||||
{% else %} |
||||
{% for item in items %} |
||||
<div{{ attributes.addClass(classes, 'field__item') }}> ({{ item.content }})</div> |
||||
{% endfor %} |
||||
{% endif %} |
||||
{% else %} |
||||
<div{{ attributes.addClass(classes) }}> |
||||
<div{{ title_attributes.addClass(title_classes) }}>{{ label }}</div> |
||||
{% if multiple %} |
||||
<div class="field__items"> |
||||
{% endif %} |
||||
{% for item in items %} |
||||
<div{{ item.attributes.addClass('field__item') }}>{{ item.content }}</div> |
||||
{% endfor %} |
||||
{% if multiple %} |
||||
</div> |
||||
{% endif %} |
||||
</div> |
||||
{% endif %} |
||||
@ -0,0 +1,81 @@
|
||||
{# |
||||
/** |
||||
* @file |
||||
* Theme override 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. |
||||
* |
||||
* Instead of overriding the theming for all fields, you can also just override |
||||
* theming for a subset of fields using |
||||
* @link themeable Theme hook suggestions. @endlink For example, |
||||
* here are some theme hook suggestions that can be used for a field_foo field |
||||
* on an article node type: |
||||
* - field--node--field-foo--article.html.twig |
||||
* - field--node--field-foo.html.twig |
||||
* - field--node--article.html.twig |
||||
* - field--field-foo.html.twig |
||||
* - field--text-with-summary.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. |
||||
* - 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. |
||||
* - label_display: The display settings for the label. |
||||
* |
||||
* |
||||
* @see template_preprocess_field() |
||||
*/ |
||||
#} |
||||
{% |
||||
set classes = [ |
||||
'field', |
||||
'field--name-' ~ field_name|clean_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 label_hidden %} |
||||
{% if multiple %} |
||||
<div{{ attributes.addClass(classes, 'field__items') }}> |
||||
{% for item in items %} |
||||
<div{{ item.attributes.addClass('field__item') }}>{{ item.content }}</div> |
||||
{% endfor %} |
||||
</div> |
||||
{% else %} |
||||
{% for item in items %} |
||||
<div{{ attributes.addClass(classes, 'field__item') }}>{{ item.content }}</div> |
||||
{% endfor %} |
||||
{% endif %} |
||||
{% else %} |
||||
<div{{ attributes.addClass(classes) }}> |
||||
<div{{ title_attributes.addClass(title_classes) }}>{{ label }}</div> |
||||
{% if multiple %} |
||||
<div class="field__items"> |
||||
{% endif %} |
||||
{% for item in items %} |
||||
<div{{ item.attributes.addClass('field__item') }}>{{ item.content }}</div> |
||||
{% endfor %} |
||||
{% if multiple %} |
||||
</div> |
||||
{% endif %} |
||||
</div> |
||||
{% endif %} |
||||
@ -0,0 +1,57 @@
|
||||
{# |
||||
/** |
||||
* @file |
||||
* Default theme implementation to display a paragraph. |
||||
* |
||||
* Available variables: |
||||
* - paragraph: Full paragraph entity. |
||||
* Only method names starting with "get", "has", or "is" and a few common |
||||
* methods such as "id", "label", and "bundle" are available. For example: |
||||
* - paragraph.getCreatedTime() will return the paragraph creation timestamp. |
||||
* - paragraph.id(): The paragraph ID. |
||||
* - paragraph.bundle(): The type of the paragraph, for example, "image" or "text". |
||||
* - paragraph.getOwnerId(): The user ID of the paragraph author. |
||||
* See Drupal\paragraphs\Entity\Paragraph for a full list of public properties |
||||
* and methods for the paragraph object. |
||||
* - content: All paragraph items. Use {{ content }} to print them all, |
||||
* or print a subset such as {{ content.field_example }}. Use |
||||
* {{ content|without('field_example') }} to temporarily suppress the printing |
||||
* of a given child element. |
||||
* - attributes: HTML attributes for the containing element. |
||||
* The attributes.class element may contain one or more of the following |
||||
* classes: |
||||
* - paragraphs: The current template type (also known as a "theming hook"). |
||||
* - paragraphs--type-[type]: The current paragraphs type. For example, if the paragraph is an |
||||
* "Image" it would result in "paragraphs--type--image". Note that the machine |
||||
* name will often be in a short form of the human readable label. |
||||
* - paragraphs--view-mode--[view_mode]: The View Mode of the paragraph; for example, a |
||||
* preview would result in: "paragraphs--view-mode--preview", and |
||||
* default: "paragraphs--view-mode--default". |
||||
* - view_mode: View mode; for example, "preview" or "full". |
||||
* - logged_in: Flag for authenticated user status. Will be true when the |
||||
* current user is a logged-in member. |
||||
* - is_admin: Flag for admin user status. Will be true when the current user |
||||
* is an administrator. |
||||
* |
||||
* @see template_preprocess_paragraph() |
||||
* |
||||
* @ingroup themeable |
||||
*/ |
||||
#} |
||||
{% |
||||
set classes = [ |
||||
'paragraph', |
||||
'paragraph--type--' ~ paragraph.bundle|clean_class, |
||||
view_mode ? 'paragraph--view-mode--' ~ view_mode|clean_class, |
||||
not paragraph.isPublished() ? 'paragraph--unpublished' |
||||
] |
||||
%} |
||||
{% block paragraph %} |
||||
<div{{ attributes.addClass(classes) }}> |
||||
{% block content %} |
||||
{{ content.field_contributor_name_and_role }} |
||||
{{ content.field_contributor_description }} |
||||
{% endblock %} |
||||
</div> |
||||
|
||||
{% endblock paragraph %} |
||||
Loading…
Reference in new issue