Реализация блока с внедрением формы

См. основной материал для введения.

В имплементации блока требуется сформировать набор переменных и передать его в шаблон.

Шаблон был ранее объявлен в основном файле модуля, исходя из макета.

В макете присутствуют две надписи (title и subtitle), а также форма. Форму я создал на базе Drupal\Core\Form\FormBase.

/src/Plugin/Block/SearchGoodsBlock.php

Для общей картины приведу и код шаблона.

Здесь вы увидите подключение библиотеки, которую я объявлял ранее в модуле.

/templates/search-form-for-goods.html.twig

Код JS библиотеки.

/libs/product-search-autocomplete.js

Мало букафф? Читайте есчо !

Редактируем атрибуты ссылки в twig шаблоне

Июль 14, 2023 г.

Как без хуков preprocess в Drupal добавить, например, атрибут target для ссылки в шаблоне? Например, возьмем штатный шаблон file-link.html.twig: [crayon-6a4d12d12dd29219226232/] Используем фильтр merge, добавляя нужные атрибуты: [crayon-6a4d12d12dd43486247871/]

Читать

Реализация формы поиска товаров

Май 11, 2023 г.

См. основной материал для введения. Форма в нашем случае не требует отправки/проверки данных, и реализует только два метода - getFormId и buildForm. Хотя форма и не содержит кнопки submit, но все равно будет реагировать на отправку данных, поэтому ...

Читать

Получить код оригинального языка сущности в Drupal

Октябрь 18, 2023 г.

Сущность возвращает язык в контексте выбранного языка, но иногда нужно получить оригинальный язык node или другой entity. Вот так выглядит запрос в контексте: [crayon-6a4d12d12dfe1222785497/] А так можно получить код языка оригинальной версии ...

Читать

Проверить роль пользователя в twig

Август 16, 2023 г.

Многие стандартные шаблоны в Drupal содержат вывод переменной пользователя (user), что делает возможным реализацию различной логики, в том числе и проверку роли пользователя. Например, вы желаете показывать какой-то элемент шаблона, только для ...

Читать
 

Комментарии к «Реализация блока с внедрением формы»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: