Смотрим как выполнить рендеринг файла-картинки в 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.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Октябрь 3, 2021 г.
В шаблонах twig вы можете использовать функцию link, для рендера ссылки.
Параметры вызова следующие - link($text, $uri, $attributes = {}), первые два - обязательные.
[crayon-6895c3487afe1938683814/]
Результатом будет следующий HTML код:
...
Читать
Август 5, 2021 г.
В Drupal 7 вы могли использовать функцию l($text, $url, $options) для генерации HTML кода тега <A>. В Drupal 9 подход коренным образом изменился, и прямого "наследника" устаревшей функции нет.
Чтобы получить примерно тот же функционал придется ...
Читать
Август 28, 2021 г.
Сниппет кода, демонстрирующий как alias создаётся в Drupal 9.
Ранее (в 8й версии) это был сервис ядра path.alias_storage, и код выглядел так:
[crayon-6895c3487b4d6499725146/]
В 9й версии хранилище перенесли в entityTypeManager и потому выглядит ...
Читать
Август 31, 2021 г.
Рассмотрим пару кейсов, того как рендерить блок из вашего кода.
Блок существует как Entity
Вы создали произвольный блок через Manage->Structure->Block ...
Читать