From 17061d0c351d38f4352e3432018188ab29f0cedd Mon Sep 17 00:00:00 2001 From: "Joseph.Rawlings" Date: Sun, 25 Jan 2026 15:12:34 -0500 Subject: [PATCH] fix: ensure email body is fresh from template during queue execution --- app/Mail/Mail.php | 7 ++++++- resources/views/components/mail/base.blade.php | 4 +++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/app/Mail/Mail.php b/app/Mail/Mail.php index 861bbe4e4..3cfbfba78 100644 --- a/app/Mail/Mail.php +++ b/app/Mail/Mail.php @@ -46,9 +46,14 @@ class Mail extends Mailable */ public function content(): Content { + // Always get fresh body from the template to handle queue serialization properly + $viewData = $this->data; + $viewData['body'] = $this->emailTemplate->body ?? ''; + $viewData['data'] = $viewData; // Ensure 'data' key exists for BladeCompiler::render + return new Content( html: 'components.mail.base', - with: $this->data, + with: $viewData, ); } } diff --git a/resources/views/components/mail/base.blade.php b/resources/views/components/mail/base.blade.php index 05f010e3d..4c5053daa 100644 --- a/resources/views/components/mail/base.blade.php +++ b/resources/views/components/mail/base.blade.php @@ -1,3 +1,5 @@ - {!! Illuminate\View\Compilers\BladeCompiler::render($body, $data) !!} + @if(!empty($body)) + {!! Illuminate\View\Compilers\BladeCompiler::render($body, $data ?? []) !!} + @endif