Laravel 5.5
bestmomo/laravel-email-confirmation 1.1
を使用します。
インストール&準備
最初にartisan make:authでLaravel標準のユーザー認証用のファイルを生成。
php artisan make:authコンポーザーでLaravel Email Confirmationをインストールします。
composer require bestmomo/laravel-email-confirmationprovidersに追記します。
'providers' => [ // ... Bestmomo\LaravelEmailConfirmation\ServiceProvider::class,],migrateでデータベースを作成。
php artisan migrateファイルの書き換え
make:authで生成されたコントローラー各ファイルを書き換えていきます。
基本的にuseの部分を書き換えるだけです。
//use Illuminate\Foundation\Auth\AuthenticatesUsers;use Bestmomo\LaravelEmailConfirmation\Traits\AuthenticatesUsers;//use Illuminate\Foundation\Auth\RegistersUsers;use Bestmomo\LaravelEmailConfirmation\Traits\RegistersUsers;//use Illuminate\Foundation\Auth\ResetsPasswords;use Bestmomo\LaravelEmailConfirmation\Traits\ResetsPasswords;続いてViewのメッセージを表示する部分です。
これは下記コマンドで書き出されます。
php artisan confirmation:authlogin.blade.phpとregister.blade.phpに追記されます。
ローカライズ
標準では日本語に対応していないので作成しましょう。
php artisan vendor:publish --tag=confirmation:translationsphp artisan confirmation:notificationresources/lang/vendor/confirmationディレクトリが作成されるので他の言語ファイルをコピーして、jaディレクトリを作成します。
メールの内容を書き換えたい場合はapp/Notifications/ConfirmEmail.phpを編集します。 メールのテンプレート自体を変更したい場合はtoMailメソッドのMailMessageにviewを指定すると独自のViewファイルを読み込めます。
public function toMail($notifiable){ return (new MailMessage) ->subject('登録ありがとうございます。') ->view( 'emails.register', ['confirmation_url' => url("confirmation/$notifiable->id/$notifiable->confirmation_code")] );}ほぼドキュメントのままですが、以上です。
これで/registerにアクセスして、登録情報を入力すると登録URLが記載されたメールが送られて登録できるようになります。
詳しくは下記リンク先のページを参考にしてください。


