我正在使用我的应用程序的一部分,当时发送电子邮件,我希望电子邮件使用基本布局(品牌等),然后在其中加载单独的模板,特定于电子邮件类型,我知道你可以在使用控制器和视图时在这样的视图中进行布局,
protected $layout = 'layouts.master';
然而,在发送这样的电子邮件时,我找不到合适的方式来使用它,
Mail::send('emails.organisations.admin_removed', $array, function($message) use ($array) {
$message->to("email@email.com", "Simon Ainley")
->from('sender@email.com', 'Email Sender')
->subject("Email Sender - Subject");
});
是否可以拥有主电子邮件模板,然后输入子视图?
答案 0 :(得分:1)
呀!这是可能的。
您的主要模板(emails.orgainsations.template_layout.blade.php)
<head>
<meta charset="utf-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<meta name="description" content=""/>
<meta name="author" content=""/>
<title>{{config('app.project_name')}}</title>
<style>
//your css goes here
</style>
</head>
<body>
<table width="600" cellspacing="0" cellpadding="0" border="0" class="wrap">
<tbody>
<tr>
<td class="header">
<h1 class="logo" title="Logo"><img src="{{ asset('assets/images/logo-mail.png') }}" alt="logo" /></h1>
</td>
</tr>
<tr>
<td style="padding: 20px; border: 1px solid #8a35e1; color: #323232;">
@yield('content')
</td>
</tr>
</tbody>
</table>
</body>
您的子模板(emails.organisations.admin_removed)
@extends('emails.orgainsations.template_layout')
@section('content')
<p>
your mail content goes here
</p>
@endsection
并且,在邮件发送代码中,照常调用子模板
Mail::send('emails.organisations.admin_removed', $array, function($message) use ($array) {
$message->to("email@email.com", "Simon Ainley")
->from('sender@email.com', 'Email Sender')
->subject("Email Sender - Subject");
});
答案 1 :(得分:0)
您要做的是创建主刀片模板,并在子刀片模板中完成扩展。然后将子模板传递给Mail::send()
方法。
所以你有你的主人:电子邮件/布局/ master.blade.php
<html>
<head>
<title>Email Master</title>
</head>
<body>
Dear {{ $recipient }}
<div class="container">
@yield('content')
</div>
Kind regards,
@include('emails/signature')
</body>
</html>
然后在子模板中扩展:电子邮件/布局/组织/ admin / remove.blade.php
@extends('emails.layouts.master')
@section('content')
<p>You have been removed</p>
@endsection
然后将子视图传递给send方法:
Mail::send('emails.layouts.organisations.admin.remove', $array, function($message) use ($array) {
$message->to("email@email.com", "Simon Ainley")
->from('sender@email.com', 'Email Sender')
->subject("Email Sender - Subject");
});
我已经在这里详细介绍了很多细节,因此我强烈建议您查看文档以获取更深入的详细信息:https://laravel.com/docs/5.2/blade
您还应该尝试熟悉刀片提供的所有不同指令,以充分利用其所有功能。