Как я могу загрузить изображение с помощью URI в Drupal 8? - PullRequest
0 голосов
/ 19 марта 2019

Я написал собственный шаблон с функцией customtemplate_preprocess_image.

В этой функции в моем распоряжении только $ variable ['uri'] для загрузки того же изображения, но с другим стилем изображения.URI имеет следующий формат: '/sites/default/files/styles/image_xs/public/2019-02/IMG_20181219_135712499_0.jpg?itok=1faUCioy'

Если я сейчас сделаю это

$style = ImageStyle::load('image_lightbox');
$image = \Drupal::service('image.factory')->get($variables['uri']);
if ($image->isValid()) {
    print("Image url: ".$variables['uri'].'<br>');
}
else {
    print("Image invalid: ".$variables['uri'].'<br>');
}

Это делает изображение недействительным: /sites/default/files/styles/image_xs/public/2019-02/IMG_20181219_135712499_0.jpg?itok=1faUCioy

Почему? И как я могу решить это, имея только этоURI?

1 Ответ

0 голосов
/ 19 марта 2019

Вы можете использовать файл uri в файле ветки на drupal 8.

{{ file_url(node.field_image.entity.fileuri) }}
...