fgiardina / mailer

Laravel 邮件发送器

v1.2.53 2020-09-01 15:44 UTC

This package is auto-updated.

Last update: 2024-09-29 05:02:17 UTC


README

Software License Travis Total Downloads

安装

composer require fgiardina/mailer

如果你使用的是 Laravel 5.5+,则无需手动注册服务提供者。但是,如果你使用的是更早版本的 Laravel,请在你的 app 配置文件中注册 MailerServiceProvider

'providers' => [
    // Other service providers...

    Fgiardina\Mailer\MailerServiceProvider::class,
],

发布

php artisan vendor:publish --provider="Fgiardina\Mailer\MailerServiceProvider"

配置电子邮件设置

.env 文件

  MAIL_DRIVER=smtp
  MAIL_HOST=smtp.mailtrap.io
  MAIL_PORT=2525
  MAIL_USERNAME=xxxxxxxxxxxx
  MAIL_PASSWORD=xxxxxxxxxxxx
  MAIL_ENCRYPTION=null
  MAIL_FROM_ADDRESS=example@mail.com
  MAIL_FROM_NAME="example"

  MAILER_VIEWS_FOLDER=vendor.mailer #change custom path
  MAILER_SEND_ROUTE="/mailer/sendemail" #change custom route
  MAILER_TEST_ROUTE="/mailer/testemail" #change custom route
  MAILER_TEST_MAIL_FORM_ENABLE=true #false: disabled public access test from {MAILER_TEST_ROUTE}

使用方法

  • Web 表单
http://YOUR-DOMAIN/mailer/testemail
  • 终端或 Postman 客户端
curl -X POST \
  http://YOUR-DOMAIN/mailer/sendemail \
  -H 'Content-Type: application/json' \
  -d '{
    "to_name": "John Doe",
    "to_email": "john@doe.com",
    "to_bcc_email": "john2@doe.com",
    "subject": "Email title",
    "header": "Header Info",
    "body": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt",
    "footer": "Footer Info",
    "template": "format"
}'
  • URL 默认: http://YOUR-DOMAIN/mailer/sendemail
  • 自定义 URL: http://YOUR-DOMAIN/{MAILER_SEND_ROUTE},用 .env 文件中的值替换

必需: to_emailsubjectbodytemplate

模板

无格式的 HTML 模板

  "template": "basic"

格式化的 HTML 模板

  "template": "format"

自定义模板

路径:MAILER_VIEWS_FOLDER

  "template": "mycustomtemplate"

mycustomtemplate.blade.php

// ...HTML
<body>

    @isset($data->header)
        <header>{{ $data->header }}</header>  
    @endisset

    <div>{{ $data->body }}</div>

    @isset($data->footer)
        <footer>{{ $data->footer }}</footer>  
    @endisset

</body>  
// ...HTML

许可证

MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件