Генерация логотипа в электронном письме - PullRequest
0 голосов
/ 03 сентября 2018

У меня проблема с генерацией ссылок при попытке отправить электронное письмо. В моем файле .env:

WEB_LOGO="http://test.loc/build/images/logo.png"

В моей веточке.имл

twig:
    globals:
        web_logo: '%env(WEB_LOGO)%'

Мой шаблон электронной почты:

<img align="center" alt="" src="{{ web_logo }}" height="30">

Проблема в том, что когда я открываю папку / build / images, изображение логотипа выглядит так:

http://test.loc/build/images/logo.12345.png

Но я генерирую как:

http://test.loc/build/images/logo.png

Я не могу использовать поколение, подобное {{ absolute_url(asset('build/images/logo.png')) }}, потому что я отправляю электронные письма, используя внешнюю службу, и я ограничен. Помогите пожалуйста!

1 Ответ

0 голосов
/ 03 сентября 2018

Я не знаю, есть ли лучший способ сделать это, но я бы использовал компонент Finder, чтобы получить такое имя файла:

$finder = new Finder();
$directory = 'http://test.loc/build/images';
$name = 'logo';
$finder->in($directory)->name("/{$name}/")->files();
$logoFile = iterator_to_array($finder, false)[0];
$logoPath = $logoFile->getRealPath();

Затем вы можете передать переменную $ logoPath в качестве аргумента в шаблон веточки.

Конечно, будет проблема, если у вас есть несколько файлов логотипов, таких как 'logo.1.png' и 'logo.29.png' и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...