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

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

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

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

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

/src/Plugin/Block/SearchGoodsBlock.php

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

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

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

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

/libs/product-search-autocomplete.js

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

TMGMT переводит поле view_mode, объявленное плагином menu_link_extras

Июнь 17, 2024 г.

Поля, определенные модулями, не попадают в конфиг файлы сайта, и их не получается настроить привычным способом. В данном случае, требуется как то указать TMGMT модулю, что не нужно переводить поле view_mode. Чтобы предотвратить проблему, можно ...

Читать

Получить список типов товаров в Drupal Commerce

Июль 23, 2023 г.

В терминологии Drupal, типы товаров это - бандлы (bundle) сущности commerce_product. Получить их список можно вот так: [crayon-6a55cb46a57ed836171706/] Как результат, в $product_types вы получите массив типов товаров, где ключом является ...

Читать

Ошибка в Drupal: once is not a function

Май 8, 2023 г.

В Drupal 9/10 нет jQuery плагина once(), потому при использовании этой функции вы увидите сообщение о том, что once - не является функцией. Плагин удобен, но его не сложно заменить в коде буквально парой вставок. Он работает по следующему алгоритму ...

Читать

Чем заменить drupal_get_path() в Drupal 9/10

Январь 9, 2024 г.

Функция считается устаревшей, начиная с версии ядра 9.3, в 10-й версии функция удалена из кода. В новом API нужно воспользоваться одним из сервисов ядра, которые реализуют нужную функцию. Сервис extension.list.module - реализует функции, связанные ...

Читать
 

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

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



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