Смотрим как выполнить рендеринг файла-картинки в Drupal 9 программно.
Есть FID, и требуется рендерить этот файл программно в шаблоне <IMG>. Для этого нам понадобится воспользоваться сервисом ядра — renderer.
|
|
$file = \Drupal\file\Entity\File::load($FID); $image_vars = [ '#theme' => 'image', '#uri' => $file->getFileUri(), '#alt' => t('Альтернативный текст'), ]; $imgHtml = \Drupal::service('renderer')->render($image_vars); |
Довольно просто. Если знать что делать :). Шаблон image принимает и ряд других переменных, можете ознакомиться с ними в документации.
Drupal 8/9
Данная запись опубликована в 03.08.2021 17:14 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Октябрь 8, 2021 г.
Привычная функция watchdog, которую мы использовали в 6/7 версиях, к девятке пережила эволюцию до сервиса логирования.
Бывшее ранее:
[crayon-69b4726f07984662046255/]
Сейчас выглядит так:
[crayon-69b4726f0798d574478110/]
Помимо того, ...
Читать
Сентябрь 8, 2021 г.
Продолжаю публиковать сниппеты кода для drupal 9, на этот раз несколько полезных вещей, связанных с рендерингом меню.
Рендер меню по известному id меню
Вы знаете идентификатор, вам нужен рендер:
[crayon-69b4726f07a88822425473/]
Рендер ...
Читать
Сентябрь 26, 2024 г.
При не верной настройке провайдера переводов, может случаться следующая проблема - часть текстовых полей полностью или частично оказывается не переведена. ...
Читать
Август 28, 2021 г.
Сниппет кода, демонстрирующий как alias создаётся в Drupal 9.
Ранее (в 8й версии) это был сервис ядра path.alias_storage, и код выглядел так:
[crayon-69b4726f07c37551218493/]
В 9й версии хранилище перенесли в entityTypeManager и потому выглядит ...
Читать