laravel 客製化變更密碼信件 2024-04-02 14:56:01
1.
//建立新的notification
php artisan make:notification PasswordReset
//複製mail的模板
php artisan vendor:publish --tag=laravel-mail
//複製notification的模板
php artisan vendor:publish --tag=laravel-notifications
2.更改app/Notifications/PasswordReset.php (信件客製的文字和按鈕)
(1)引入Lang
use Illuminate\Support\Facades\Lang;
(2)建構子帶入$token
public $token;
public function __construct($token)
{
$this->token = $token;
}
(3)更改toMail
public function toMail($notifiable)
{
if (static::$toMailCallback) {
return call_user_func(static::$toMailCallback, $notifiable, $this->token);
}
return (new MailMessage)
->subject(Lang::get('信件主旨'))
->action(Lang::get('按鈕顯示文字'), url(route('password.reset', ['token' => $this->token, 'email' => $notifiable->getEmailForPasswordReset()], false)))
->line(Lang::get('這個驗證連結會在 :count 分鐘後失效.', ['count' => config('auth.passwords.'.config('auth.defaults.passwords').'.expire')]))
->line(Lang::get('如果您沒有申請變更密碼,請無視信件.'));
}
3.更改views/vendor/notification/email.blade.php
更改信件格式固定的文字,如:Whoops! 或 Hello!之類的
4.更改views/vendor/mail/html/layout.blade.php
更改模板格式
Vincent Chen
無聊寫了一堆雜七雜八程式的勞工
其他文章
2024-04-01 12:21:49
2024-03-28 15:40:45
2024-02-27 12:31:59
2023-04-10 15:39:03
2023-04-06 15:50:58