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

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

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

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

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

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

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

Ошибка: Migration is busy with another operation

Апрель 19, 2024 г.

При отладке миграций в Drupal могут возникать состояния, когда миграция не прошла по какой то причине (ошибке) и подвисла в состоянии отличном от Idle. ...

Читать

Загрузить данные параграфов для связанного с ними entity

Июль 8, 2023 г.

Пример кода для загрузки параграфов. В данном примере будем загружать параграфы, связанные с entity commerce_product_variation (это сущность модуля Commerce). Я привязал информацию по остаткам складов к вариациям в виде параграфов (тип - stocks). ...

Читать

Как полностью удалить поле в Drupal, если оно «зависло» в хранилище полей

Сентябрь 5, 2025 г.

Иногда в Drupal возникает ситуация: вы удаляете поле с типов сущностей (bundle), но оно не исчезает полностью из системы. UI говорит, что поле «используется», хотя на самом деле ни одна сущность его не использует. В этом случае поле остаётся в конфигурации ...

Читать

Attempting to re-run cron while it is already running.

Июнь 3, 2025 г.

Попытка запустить cron параллельно с запущенным кроном не увенчается успехом, так как Drupal использует блокировку. Но иногда, из-за ошибок во время исполнения, блокировка не снимается. Что делать, если блокировка не была снята штатно? На самом ...

Читать
 

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

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



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