Чтобы извлечь адрес изображения из картинки в поле типа media, требуется ряд преобразований с использованием Entity объектов Drupal.
Предполагается, что вы уже загрузили entity с полем типа media (в примере называется — field_media) в какую то переменную. Дальше нужно загрузить объект media, получить ID файла, загрузить объект файла и там уже сгенерировать URL.
|
|
use Drupal\file\Entity\File; use Drupal\media\Entity\Media $entity = ...; // ваша нода или параграф $media_id = $entity->get('field_media')->getString(); $fid = Media::load($media_id)->field_media_image->target_id; $file = File::load($fid); $URL = $file->createFileUrl(); |
По умолчанию вы должны получить относительный путь, если нужен абсолютный — то используйте следующий вызов метода createFileUrl():
|
|
$absoluteUrl = $file->createFileUrl(false); |
Drupal 8/9
Данная запись опубликована в 27.07.2021 20:25 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Август 22, 2021 г.
Когда требуется подключиться и подтянуть данные из не основной базы, то нужно сначала задать свойства нового подключения, подключиться, выполнить запрос, а затем вернуть настройки в исходное состояние. Рассмотрим примеры кода, которые демонстрируют как ...
Читать
Сентябрь 27, 2021 г.
Логика полей или условные поля - это удобная фича в Form API друпал. Она позволяет формализовать кучу мелкой логики на фронт-енд, связанной с взаимодействием пользователя с вашей формой.
Здесь я приведу пару примеров использования, а углубиться ...
Читать
Август 26, 2021 г.
Есть список районов города, доставка в которые имеет фиксированную ставку. Пользователь выбирает район - программа должна подставить цену доставки для ...
Читать
Сентябрь 8, 2021 г.
Продолжаю публиковать сниппеты кода для drupal 9, на этот раз несколько полезных вещей, связанных с рендерингом меню.
Рендер меню по известному id меню
Вы знаете идентификатор, вам нужен рендер:
[crayon-6ae94e315e6de395057965/]
Рендер ...
Читать