Работа с шаблонами

Вывод полей

Список полей:

{{ url }} - адрес ссылки

{{ content.field_images }} - изображения

{{ node.field_parameters.summary }} - анонс

{{ product.НАЗВАНИЕ.content }} - название

{{ product.НАЗВАНИЕ }} - название

{{ product_entity.НАЗВАНИЕ.value }} - название

Условия:

{% if product_entity.field_special_offer.value %}
  ... your code ...
{% else %}
  ... your code ...
{% endif %}
{% if product.field_special_offer.value %}
  ... your code ...
{% else %}
  ... your code ...
{% endif %}
{% if content.field_price.0['#markup'] != 0 %}
  ... your code ...
{% endif %}
Изменение типа Input на Button

Часто по дизайну или функционалу вместо кнопок <input type="submit" value="Submit" /> нужны кнопки <button type="submit">Submit</button>.

Произвести замену типа достаточно просто.

Для этого нам понадобится в папке с темой создать файл input--submit.html.twig

В содержимое файла вставляем:

            <button{{ attributes }}>{{ attributes.value }}</button>
{{ children }}
          

По завершению не забываем сбросить кэш.

Twig оборачиваем плашки в div после 3го элемента
            {% for item in models_with_technic %}
  {% if loop.index == 4 %}
    <div style="display: none;">
  {% endif %}
    ТУТ ПЛАШКИ
{% endfor %}

{% if models_with_technic.length > 3 %}
    </div>
{% endif %}
          
Вывод блоков через TwigTweak
{{ drupal_block('algus_engine_promo_block', wrapper=false) }}
{{ drupal_block('algus_engine_news_block', wrapper=false) }}
{{ drupal_block('search_form', wrapper=false) }}
{{ drupal_menu('main') }}
{{ drupal_entity('block', 'block_id') }}
{{ drupal_entity('block', 'webform_hd_theme_2') }}
{{ drupal_entity('webform', 'poluchit_konsultaciyu') }}
Добавление аттрибута и классов
<div{{ content_attributes.setAttribute('id', 'НАЗВАНИЕ') }}></div>
<div{{ attributes.setAttribute('id', 'НАЗВАНИЕ') }}></div>

Добавление нескольких значений

{% set attr = 'НАЗВАНИЕ_АТТРИБУТА' %}
{% set val = 'ЗНАЧЕНИЕ' %}
{%
  set classes = [
    'КЛАСС_1',
    'КЛАСС_2',
  ]
%}

{{ content_attributes.addClass(classes).setAttribute(attr, val) }}