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

Функция считается устаревшей, начиная с версии ядра 9.3, в 10-й версии функция удалена из кода.

В новом API нужно воспользоваться одним из сервисов ядра, которые реализуют нужную функцию.

Сервис extension.list.module — реализует функции, связанные с модулями.
Сервис extension.list.theme — реализует функции, связанные с темами.
Сервис extension.list.profile — реализует функции, связанные с профилями.

Примеры использования:

Есть и универсальный сервис, который заменяет три предыдущих — extension.path.resolver. Вот как он реализует нужную функцию:

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

Прячем поле view в зависимости от роли пользователя в Drupal

Август 31, 2023 г.

Метод работает не только с ролями, но и любой другой логикой, которую вы в силах реализовать в коде. Нам понадобится hook_views_pre_render, где мы выполним проверку и отключим не нужное нам поле представления. [crayon-6aac1b1268a2a459148674/] ...

Читать

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

Июль 14, 2023 г.

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

Читать

Как добавить css классы в attributes (twig, Drupal)

Май 16, 2024 г.

Порою требуется добавить свои классы в переменную attributes на уровне шаблона (в twig). Переменная attributes - это объект Drupal\Core\Template\Attribute. У него есть нужный нам метод - addClass(). Пример использования: [crayon-6aac1b1268ce8156856038/]

Читать

Добавление своих suggestion в Drupal 9/10

Май 2, 2023 г.

Для добавления suggestions требуется использовать соответствующий группе шаблонов hook. Если название шаблона не известно, то его можно подсмотреть в режиме ...

Читать
 

Комментарии к «Чем заменить drupal_get_path() в Drupal 9/10»

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



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