【问题标题】:Use markdown email for contact form使用降价电子邮件作为联系表格
【发布时间】:2017-08-20 07:13:06
【问题描述】:

我们可以使用降价功能来设计联系表格的电子邮件模板吗?我正在使用这种方法从联系表发送消息:

发送邮件的方法:

        Mail::send('emails.contact', $data, function($message) use ($data){
        $message->from($data['email']);
        $message->to('example@domain.com');
        $message->subject($data['subject']);
    });

contact.blade.php

    <h3>You have a new email via contact form</h3>
<div>
{{ $bodyMessage }}
</div>
<p>Sent by: {{ $email }}</p>

【问题讨论】:

    标签: php laravel email laravel-5.4


    【解决方案1】:

    您必须使用mailable 类才能在电子邮件中使用降价。

    运行命令php artisan make:mail ContactForm 创建mailable 类。

    ContactForm 类中,您的build 方法应该是这样的:

    public function build()
    {
        return $this->from('example@example.com')
            ->markdown('emails.contact');
    }
    

    您还可以在生成可邮寄类时自动关联降价视图,方法是将降价标志传递给视图名称:

    php artisan make:mail --markdown=view.name
    

    为了发送邮件,你可以这样称呼它:

    Mail::to($email)->send(new ContactForm($data));
    

    要访问mailable 中的$data 变量,您必须将其声明为公共变量。在 mailable 类上定义的任何公共属性都将自动对视图可用。示例:

    class ContactForm extends Mailable
    {
        use Queueable, SerializesModels;
    
        public $data;
    
        /**
         * Create a new message instance.
         *
         * @param $data
         */
        public function __construct($data)
        {
            $this->data = $data;
        }
        ...
    }
    

    在视图文件中,您可以像在其他刀片模板中一样正常访问该变量。示例:

    Sender email: {{ $data['email'] }}
    

    如果您想从刀片视图而不是 Markdown 构建,请将 markdown 替换为 ContactForm 类中的视图。

    您可以在官方文档中查看更多信息。

    https://laravel.com/docs/master/mail#writing-mailables

    【讨论】:

    • 如何将我的联系表单的操作与此 ContactForm 类联系起来?
    • 如果您指的是访问网站联系表中填写的数据,我已经更新了答案。
    【解决方案2】:

    由于您的代码似乎没有任何问题,我只是将您指向文档,如果我有错误的印象并且有问题,请随时发表评论,我会更新.

    从 5.4 开始,是的。您最好在 Laravel 上查阅文档,它提供了有关可邮寄和一般发送邮件的深入说明。

    【讨论】:

      猜你喜欢
      • 2012-09-06
      • 2012-12-03
      • 1970-01-01
      • 2017-10-19
      • 1970-01-01
      • 2022-07-06
      • 2013-11-02
      • 1970-01-01
      • 2017-10-08
      相关资源
      最近更新 更多