LARAVEL

Laraveldə email göndərmək

04.03.2021 2 dəq oxuma Yeniləndi: 22.03.2021

 1. .env faylında aşağıdakı dəyişiklikləri etmək 

MAIL_MAILER=smtp
MAIL_HOST=smtp.googlemail.com
MAIL_PORT=465
MAIL_USERNAME=youremail@gmail.com
MAIL_PASSWORD=Your Password
MAIL_ENCRYPTION=ssl
MAIL_FROM_ADDRESS=youremail@gmail.com
MAIL_FROM_NAME="${APP_NAME}"

2. php artisan make:mail SignUp --markdown=emails.signInUp.signUp əmrini çalışdırmaq

3. ...\app\Mail\signInUp.php -i istifadə edəcəyimiz controllerdə aşağıdakıları daxil etmək.

$title                  = __('home.confirmationTitle');
$link                   = url('/confirmationUsers/'.$user->id.'/'.$user->email);
$text                   = __('home.confirmationMail');

$details = [
    'title' => $title,
    'link'  => $link,
    'body'  => $text
];
Mail::to($request->email)->send(new SignUp($details));

4. ...\app\Mail\signInUp.php -i aşağıdakı kimi dəyişmək

<?php

namespace App\Mail;

use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;

class SignUp extends Mailable
{
    use Queueable, SerializesModels;
    public $details;

    /**
     * Create a new message instance.
     *
     * @return void
     */
    public function __construct($details)
    {
        $this->details = $details;
    }

    /**
     * Build the message.
     *
     * @return $this
     */
    public function build()
    {
        return $this->subject(__('home.confirmationSubject'))
            ->markdown('emails.signInUp.signUp');
    }
}

5. ...\ resources \ views \ emails \ signInUp \ signUp.blade.php -ni aşağıdakı kimi dəyişmək.

@component('mail::layout')
    {{-- Header --}}
    @slot('header')
        @component('mail::header', ['url' => config('app.url')])
        {{ config('app.name') }}
        @endcomponent
    @endslot
    {{-- Body --}}
    {{$details['title']}}

    {{-- Subcopy --}}
    @isset($details['body'])
        @slot('subcopy')
            @component('mail::subcopy')
                {{$details['body']}}
                <div style="text-align: center">
                    <a href="{{ $details['link'] }}" class="button button-green">{{ __('home.confirm') }}</a>
                </div>
            @endcomponent
        @endslot
    @endisset

    {{-- Footer --}}
    @slot('footer')
        @component('mail::footer')
            © {{ date('Y') }} {{ config('app.name') }}. Group
        @endcomponent
    @endslot
@endcomponent

Nəticədə daxil edilən emailə aşağıdakı kimi mail göndəriləcək.

Digər dildə: EN