Я пытаюсь настроить макет электронной почты в формате HTML, который используется при отправке уведомлений по электронной почте.
Я опубликовал как почту, так и уведомления.
php artisan vendor:publish --tag=laravel-mail
php artisan vendor:publish --tag=laravel-notifications
Если я /resources/views/vendor/notifications/email.blade.php
файл /resources/views/vendor/notifications/email.blade.php
, я могу изменить только содержимое BODY отправляемых электронных писем. Я также хочу изменить нижний колонтитул, заголовок и все остальные части макета электронной почты.
Я попытался также изменить представления внутри /resources/vendor/mail/html/
, но всякий раз, когда уведомление отправляется, оно даже не использует эти представления и вместо этого использует стандартные рамки laravel.
Я знаю, что могу установить представление MailMessage
возвращаемое моим классом Notification, но я хочу сохранить стандартные функции line()
, greeting()
и т.д.
Кто-нибудь знает, как я могу получить свои уведомления для отправки электронной почты, используя представления в /resources/vendor/mail/html
?
Ниже приведен мой файл /resources/views/vendor/notifications/email.blade.php
, но в нем нет места для настройки верхнего/нижнего колонтитула/общего макета.
@component('mail::message')
{{-- Greeting --}}
@if (! empty($greeting))
# {{ $greeting }}
@else
@if ($level == 'error')
# Whoops!
@else
# Hello!
@endif
@endif
{{-- Intro Lines --}}
@foreach ($introLines as $line)
{{ $line }}
@endforeach
{{-- Action Button --}}
@if (isset($actionText))
<?php
switch ($level) {
case 'success':
$color = 'green';
break;
case 'error':
$color = 'red';
break;
default:
$color = 'blue';
}
?>
@component('mail::button', ['url' => $actionUrl, 'color' => $color])
{{ $actionText }}
@endcomponent
@endif
{{-- Outro Lines --}}
@foreach ($outroLines as $line)
{{ $line }}
@endforeach
<!-- Salutation -->
@if (! empty($salutation))
{{ $salutation }}
@else
Regards,<br>{{ config('app.name') }}
@endif
<!-- Subcopy -->
@if (isset($actionText))
@component('mail::subcopy')
If youre having trouble clicking the "{{ $actionText }}" button, copy and paste the URL below
into your web browser: [{{ $actionUrl }}]({{ $actionUrl }})
@endcomponent
@endif
@endcomponent