Чтобы отправлять электронные письма в формате Markdown с помощью встроенных функций электронной почты Laravel, вы можете использовать следующие методы:
Метод 1: использование почтовых классов
-
Создайте новый класс Mailable, выполнив в терминале следующую команду:
php artisan make:mail MarkdownMail -
Откройте сгенерированный класс
MarkdownMail(app/Mail/MarkdownMail.php) и обновите его, используя следующий код:<?php namespace App\Mail; use Illuminate\Bus\Queueable; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Mail\Mailable; use Illuminate\Queue\SerializesModels; class MarkdownMail extends Mailable { use Queueable, SerializesModels; / * Build the message. * * @return $this */ public function build() { return $this->markdown('emails.markdownmail') ->subject('Welcome to our website'); } } -
Создайте новый файл шаблона Markdown по адресу
resources/views/emails/markdownmail.blade.phpи добавьте в него свой контент Markdown:@component('mail::message') # Welcome to our website Hello, Welcome to our website. We are glad to have you on board. Regards, The Website Team @endcomponent -
Чтобы отправить электронное письмо, используйте следующий код:
use App\Mail\MarkdownMail; use Illuminate\Support\Facades\Mail; // Inside a controller or wherever you want to send the email $email = new MarkdownMail(); Mail::to('recipient@example.com')->send($email);
Метод 2: встроенный контент уценки
- Чтобы отправить электронное письмо со встроенным содержимым Markdown, вы можете использовать метод
markdownнепосредственно на фасадеMail. Вот пример:use Illuminate\Support\Facades\Mail; $content = " # Welcome to our website Hello, Welcome to our website. We are glad to have you on board. Regards, The Website Team "; Mail::raw($content, function ($message) { $message->to('recipient@example.com') ->subject('Welcome to our website'); });