我使用SendGrid's docs中建议的配置,通过SendGrid在Laravel中发送电子邮件。
只是提供一个现在看起来如何的例子:
Mail::send('emails.demo', $data, function($message)
{
$message->to('jane@example.com', 'Jane Doe')->subject('This is a demo!');
});
电子邮件本身工作正常,但我想添加一个SendGrid类别。我使用this repo中的addCategory()
方法在过去的非Laravel项目中完成了这项工作。
我的问题:是否有一种简单的方法可以使用Laravel邮件库添加SendGrid类别,或者只使用SendGrid PHP库更有意义吗?
答案 0 :(得分:2)
我会使用该库,即使它不是那么漂亮。
答案 1 :(得分:0)
您可以通过添加包含类别的X-SMTPAPI标头来执行此操作,但Laravel不会公开自定义标头,因此您必须直接下拉到SwiftMailer。例如,请查看this thread
答案 2 :(得分:0)
我找到了一个很好的解决方案来使它起作用:
可邮寄合同内:
/**
* Build the message.
*
* @return $this
*/
public function build()
{
return $this->view('mail')
->from('')
->subject('')
->withSwiftMessage(function($message) {
$message->getHeaders()->addTextHeader(
'X-SMTPAPI', json_encode(['category' => 'testing category'])
);
});
}