Rumahweb Journal
banner - Cara Setting SMTP Laravel dengan Script Mailable

Cara Setting SMTP Laravel dengan Script Mailable

Kemudahan struktur yang tersedia di framework Laravel membuat pengguna maupun developer, menjadi lebih terbantu dalam proses pengembangan aplikasi maupun websitenya. Selain lebih ringkas dengan adanya library, framework laravel juga dilengkapi dengan security untuk proses authentication dan pengiriman email. Pada artikel ini, kami akan berbagi cara setting SMTP Laravel dengan script mailable.

Apa yang perlu disiapkan?

Berikut beberapa tools yang perlu Anda persiapkan, untuk bisa membuat SMTP laravel dengan script mailable.

  1. Framework Laravel
  2. Script Mail SMTP
  3. Terminal (SSH)

Apabila Anda belum memiliki Laravel, Anda bisa membuat terlebih dahulu Laravel di localhost maupun di cPanel. Anda dapat melakukan instalasi Laravel di cPanel atau melakukan generate pada localhost melalui terminal dengan command sebagai berikut:

curl -s https://laravel.build/example-app | bash

Kami sarankan, Anda membuat website Laravel ini di localhost terlebih dahulu. Karena dalam proses deploy, ada beberapa function yang statusnya di disable dari sisi server, sehingga kebanyakan proses deploy Laravel di hosting akan mengalami kendala.

Cara Setting SMTP Laravel

Setelah memastikan bahwa website atau aplikasi Laravel Anda berjalan di localhost atau hosting, selanjutnya kita bisa melakukan setting SMTP Laravel melalui panduan ini.

Langkah 1. Konfigurasi file .env

Langkah pertama adalah menambahkan setting mail pada file .env, yang berfungsi untuk pengaturan email sesuai mail server yang akan digunakan. Pada contoh, kami akan menggunakan email domain yang dibuat pada hosting. Berikut contoh script pada file .env tersebut:

MAIL_MAILER=smtp
MAIL_HOST=mail.namadomain.com
MAIL_PORT=587
[email protected]
MAIL_PASSWORD=password email
MAIL_ENCRYPTION=tls
[email protected]
MAIL_FROM_NAME="${APP_NAME}"

Langkah 2. Menambahkan file class mail maillable dan blade view

Melanjutkan setting file .env yang sudah dilakukan, pada tahap ini kita akan menambahkan file script class mail mailable beserta blade view menggunakan perintah berikut melalui terminal:

php artisan make:mail WelcomeMail -m emails.welcome

Command diatas akan membuat directory mail yang di dalamnya ada file WelcomeMail.php dengan class mailable dan memarkdown emails.welcome yang tergenerate menjadi view welcome.blade.php 

Berikut hasil generate file yang sudah dibuat pada app/Mail/WelcomeMail.php

<?php

namespace App\Mail;

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

class WelcomeMail extends Mailable
{
    use Queueable, SerializesModels;

    /**
     * Create a new message instance.
     *
     * @return void
     */
    public function __construct()
    {
        //
    }

    /**
     * Build the message.
     *
     * @return $this
     */
    public function build()
    {
        return $this->markdown('emails.welcome');
    }
}

resources/views/emails/welcome.blade.php

@component('mail::message')
# Introduction

The body of your message.

@component('mail::button', ['url' => ''])
Button Text
@endcomponent

Thanks,<br>
{{ config('app.name') }}

Langkah 3. Konfigurasi routes file web.php

Pada langkah ini perlu diperhatikan inisiasi routes yang akan diarahkan ke /email, sehingga ketika mengakses di browser perlu ditambahkan imbuhan /email dan mail::to sebagai alamat email tujuan dengan penambahan send yang ditujukan ke content WelcomeMail.

<?php
use Illuminate\Support\Facades\Route;
use Illuminate\Support\Facades\Mail;
use App\Mail\WelcomeMail;

Route::get('/email', function () {
    Mail::to('[email protected]')->send(new WelcomeMail());
    return new WelcomeMail();
});

Langkah 4. Ujicoba Pengiriman email

Pada tahap ini, Anda dapat melakukan ujicoba melalui localhost menggunakan php artisan serve atau namadomain.com/email sesuai letak file laravel di sisi hosting.

Contoh pengiriman email hasil setting smtp laravel

Proses diatas akan langsung mengirimkan view html ke alamat email tujuan yang tercantum di routes. Anda juga dapat menggabungkan dengan konsep contact form mengikuti panduan berikut : Membuat Contact Form di Laravel

Selanjutnya Anda dapat melakukan pengecekan pada email tujuan untuk melihat hasilnya. Berikut screenshot notifikasi pengiriman email yang telah berhasil diterima.

Sampai dengan tahap ini, setting SMTP Laravel dengna script mailable telah selesai.

Demikian artikel kami tentang cara setting SMTP Laravel, semoga bermanfaat.

Bermanfaatkah Artikel Ini?

Klik bintang 5 untuk rating!

Rating rata-rata 5 / 5. Vote count: 1

Belum ada vote hingga saat ini!

Kami mohon maaf artikel ini kurang berguna untuk Anda!

Mari kita perbaiki artikel ini!

Beri tahu kami bagaimana kami dapat meningkatkan artikel ini?

Tinggalkan Komentar

Chrisando Suryo Nugroho