Einführung
Erstellung einer Mailable-Klasse mit Markdown-Vorlage (--markdown)
php artisan make:mail OrderShipped --markdown=emails.orders.shipped
Ergebnis
Code-Beispiel für die Markdown-Vorlage
namespace App\Mail;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;
class OrderShipped extends Mailable
{
use Queueable, SerializesModels;
public $order;
/**
* Create a new message instance.
*
* @return void
*/
public function __construct($order)
{
$this->order = $order;
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
return $this->markdown('emails.orders.shipped')
->with([
'orderName' => $this->order->name,
'orderPrice' => $this->order->price,
]);
}
}
@component('mail::message')
# Bestellung versandt
Ihre Bestellung wurde versandt!
**Bestellname:** {{ $orderName }}
**Preis:** {{ $orderPrice }}
@component('mail::button', ['url' => ''])
Bestellung ansehen
@endcomponent
Danke, dass Sie bei uns bestellt haben!
{{ config('app.name') }}
@endcomponent
Verknüpfung einer Mailable-Klasse mit einer bestehenden Ansicht (--view)
php artisan make:mail InvoiceGenerated --view=emails.invoice
Ergebnis
namespace App\Mail;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;
class InvoiceGenerated extends Mailable
{
use Queueable, SerializesModels;
public $invoice;
/**
* Create a new message instance.
*
* @return void
*/
public function __construct($invoice)
{
$this->invoice = $invoice;
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
return $this->view('emails.invoice')
->with([
'invoiceNumber' => $this->invoice->number,
'invoiceAmount' => $this->invoice->amount,
]);
}
}
Überschreiben bestehender Dateien ohne Rückfrage (--force)
php artisan make:mail WelcomeUser --markdown=emails.welcome --force
Kommentare 0
Noch keine Kommentare. Seien Sie der Erste!