В Drupal 8 есть хорошая зацепка ко всей форме параграфа — hook_field_widget_WIDGET_TYPE_form_alter , а в семерке можно зацепляться за отдельные поля формы — hook_field_widget_form_alter.
Рассмотрим примеры реализации этих зацепок.
В Drupal 8 есть хорошая зацепка ко всей форме параграфа — hook_field_widget_WIDGET_TYPE_form_alter , а в семерке можно зацепляться за отдельные поля формы — hook_field_widget_form_alter.
Рассмотрим примеры реализации этих зацепок.
Для семерки можете посмотреть другую статью.
Читать далее »То, что в семерке выполняется функцией drupal_html_class(), в Drupal 8 реализовано в виде статического метода
\Drupal\Component\Utility\Html::getClass($str).
Интеграция не сложна в принципе, т.к. Usercentrics CMP ставит задачу упростить сбор разрешений пользователя и управление скриптами на основе данных разрешений.
Читать далее »Типичная проблема сайта, когда тот оказывается за балансировщиком нагрузки (load balancer), это несоответствие части заголовков запроса клиента и тех заголовков, которые передаются балансировщиком серверу. Чаще всего мы сталкиваемся с этим при запуске сайта на продакшн, где сайт впервые оказывается на HTTPS.
Читать далее »Привычная функция watchdog, которую мы использовали в 6/7 версиях, к девятке пережила эволюцию до сервиса логирования.
Читать далее »В шаблонах twig вы можете использовать функцию link, для рендера ссылки.
Читать далее »Логика полей или условные поля — это удобная фича в Form API друпал. Она позволяет формализовать кучу мелкой логики на фронт-енд, связанной с взаимодействием пользователя с вашей формой.
Читать далее »Чтобы расширить инструментарий контентщика, обычно в редактор добавляются новые стили. Это позволяет контент-менеджеру на ряду с форматированием, использовать подготовленные заранее стили.
Читать далее »Продолжаю публиковать сниппеты кода для drupal 9, на этот раз несколько полезных вещей, связанных с рендерингом меню.
Читать далее »