Panduan Uji Kirim Email di Laravel Agar Pasti Terkirim
Hai DomaiNesians! Kali ini kita akan membahas panduan lengkap untuk uji kirim email di Laravel agar pengiriman selalu berhasil. Dalam pengembangan aplikasi Laravel, mengirim email merupakan fitur penting yang sering digunakan untuk notifikasi, verifikasi, atau komunikasi dengan pengguna. Namun, sebelum email benar-benar dikirim ke penerima asli, sangat diperlukan proses pengujian untuk memastikan semuanya berjalan lancar. Panduan ini akan menyajikan solusi praktis terhadap masalah umum dalam kirim email di Laravel, sehingga kita bisa menghindari kegagalan pengiriman di tahap produksi.
Mengapa Uji Kirim Email di Laravel?
Uji kirim email di Laravel adalah proses pengujian pengiriman email sebelum diterapkan pada lingkungan produksi. Proses ini memungkinkan kita memverifikasi konfigurasi SMTP, isi template email, dan alur pengiriman tanpa mengganggu pengguna sebenarnya. Dengan melakukan uji kirim email di Laravel, kita bisa mendeteksi masalah sejak dini.
Panduan ini merupakan kelanjutan dari artikel sebelumnya di DomaiNesia, yaitu konfigurasi email Laravel via SMTP Gmail di cPanel dan konfigurasi email Laravel di cPanel. Jika belum melakukan pengaturan dasar pada file .env sesuai panduan tersebut, langkah uji kirim email di Laravel tidak dapat dilanjutkan karena sistem tidak akan menemukan kredensial pengiriman yang valid.
Berikut adalah beberapa skenario di mana uji kirim email di Laravel sangat berguna:
- Saat mengembangkan fitur registrasi pengguna yang memerlukan email verifikasi.
- Pada sistem notifikasi transaksi e-commerce yang mengirimkan konfirmasi pembayaran.
- Ketika membangun fitur reset kata sandi yang mengirimkan link pemulihan.
- Pada aplikasi yang mengirimkan laporan berkala kepada administrator.
- Saat mengintegrasikan dengan layanan pihak ketiga yang memerlukan notifikasi email.
Berikut adalah risiko jika tidak melakukan uji kirim email di Laravel:
- Email gagal terkirim ke pengguna karena kesalahan konfigurasi SMTP.
- Template email menampilkan format yang rusak atau data yang salah.
- Pengiriman email terhambat oleh batasan provider atau spam filter.
- Aplikasi mengalami error yang tidak terdeteksi saat produksi.
- Kehilangan kepercayaan pengguna karena komunikasi yang tidak konsisten.
Panduan ini akan membahas solusi lengkap untuk mengatasi skenario-skenario tersebut melalui langkah pengujian yang sistematis.
Akses Dashboard cPanel
Langkah mengakses dashboard cPanel dapat dilewati jika file Laravel disimpan di lingkungan selain cPanel, seperti server lokal atau VPS tanpa kontrol panel. Namun, untuk hosting berbasis cPanel, akses ini menjadi pintu masuk utama.
Untuk mengakses cPanel, kita bisa masuk melalui website resmi provider hosting. Pada panduan ini, DomaiNesia digunakan sebagai contoh provider, tetapi fungsi dan metode akses akan serupa dengan provider lain yang menyediakan layanan cPanel.
Jika menggunakan layanan hosting, akses cPanel dapat dilakukan melalui halaman produk di akun DomaiNesia. Pilih paket hosting yang aktif, kemudian klik menu “Login to cPanel” yang tersedia pada detail layanan.
Bagi pengguna VPS, akses cPanel dilakukan dengan memasukkan alamat IP VPS diikuti port 2083 pada browser, misalnya https://IP_VPS:2083. Pastikan koneksi aman dengan protokol HTTPS.
Pada VPS, antarmuka cPanel mungkin memiliki tampilan dan fitur yang sedikit berbeda tergantung pengaturan provider. Beberapa fitur bisa dinonaktifkan atau ditambahkan sesuai kebijakan teknis penyedia layanan.
Proses Uji Pengiriman Email di Laravel
Setelah konfigurasi file .env selesai sesuai panduan sebelumnya, kita siap melakukan uji kirim email di Laravel. Pengujian ini akan memanfaatkan kredensial yang telah disimpan untuk memastikan koneksi SMTP berfungsi dengan baik.
Pertama, akses File Manager melalui kolom pencarian cPanel. Ketik “File Manager” pada kotak pencarian, kemudian pilih hasil yang muncul untuk membuka pengelola file.
Untuk menguji kirim email di Laravel, kita perlu membuat beberapa file pendukung. Proses ini akan dibahas secara bertahap mulai dari pembuatan class Mailable hingga pengujian akhir.
1. Tambahkan Class Mailable
Langkah awal dalam uji kirim email di Laravel adalah membuat class Mailable. Akses folder “app” yang merupakan direktori utama untuk logika aplikasi Laravel.
Buat folder baru bernama “Mail” dengan mengklik tombol “Folder”. Pada jendela New Folder, ketik “Mail” kemudian klik “Create New Folder” untuk menyimpan.
Masuk ke folder Mail yang baru dibuat, kemudian buat file baru bernama “TestMail.php”. Gunakan tombol “+ File”, ketik “TestMail.php” pada kolom New File Name, lalu klik “Create New File”.
Klik kanan pada file TestMail.php, pilih opsi “Edit” untuk membuka editor teks.
Pada jendela konfirmasi, klik tombol “Edit” untuk melanjutkan ke halaman pengeditan.
Salin kode berikut ke dalam editor file TestMail.php:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
<?php namespace App\Mail; use Illuminate\Bus\Queueable; use Illuminate\Mail\Mailable; use Illuminate\Queue\SerializesModels; class TestMail extends Mailable { use Queueable, SerializesModels; public $data; public function __construct($data) { $this->data = $data; } public function build() { return $this->from(env('email@pengirim.com'), env('Nama Pengirim')) ->subject('Test Kirim Email Dari Laravel') ->view('emails.test') ->with(['data' => $this->data]); } } |
Sesuaikan variabel email pengirim dengan nilai yang ada di file .env. Setelah selesai, klik tombol “Save Changes” untuk menyimpan perubahan.
2. Tambahkan View Email
Langkah berikutnya dalam proses kirim email di Laravel adalah membuat template tampilan email. Akses folder “resources” kemudian masuk ke subfolder “views”.
Buat folder baru bernama “emails” dengan cara yang sama seperti sebelumnya. Klik tombol “Folder”, ketik “emails”, lalu “Create New Folder”.
Masuk ke folder emails, buat file baru bernama “test.blade.php” menggunakan tombol “+ File”.
Klik kanan pada file test.blade.php, pilih “Edit” untuk membuka editor.
Klik tombol “Edit” pada jendela konfirmasi untuk melanjutkan.
Tambahkan kode HTML berikut ke dalam file test.blade.php:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<!DOCTYPE html> <html> <head> <title>Test Email Laravel</title> </head> <body> <h1>Hi, {{ $data['name'] ?? 'User' }}</h1> <p>Test Kirim Email dari laravel</p> <p>Pesan: {{ $data['message'] ?? 'Tidak Ada Pesan' }}</p> <p>Terima kasih,</p> <p>{{ env('email@pengirim.com') }}</p> </body> </html> |
Sesuaikan variabel sesuai kebutuhan, kemudian simpan dengan klik “Save Changes”.
3. Tambahkan Route Akses Kirim Email
Setelah class Mailable dan view selesai, tambahkan route untuk mengakses fungsi kirim email di Laravel. Buka folder “routes”, cari file “web.php”.
Klik kanan pada file web.php, pilih opsi “Edit”. Jika file belum ada, buat terlebih dahulu dengan tombol “+ File”.
Klik tombol “Edit” pada jendela konfirmasi.
Tambahkan kode route berikut di akhir file web.php:
|
1 2 3 4 5 6 7 8 9 10 11 |
use App\Mail\TestMail; use Illuminate\Support\Facades\Mail; Route::get('/link-test-email', function () { $data = [ 'name' => 'Nama Pengirim', 'message' => 'Isi Pesan', ]; Mail::to('email@tujuan.com')->send(new TestMail($data)); return 'Tes Email Berhasil Dikirim!'; }); |
Ganti nilai email tujuan dan data sesuai kebutuhan. Simpan perubahan dengan “Save Changes”.
4. Uji Kirim Email
Nah, setelah semua file siap, saatnya melakukan uji kirim email di Laravel. Kunjungi URL domain diikuti route yang telah dibuat, misalnya https://domain.com/link-test-email.
Jika berhasil, halaman akan menampilkan pesan “Tes Email Berhasil Dikirim!” sebagai konfirmasi bahwa proses kirim email di Laravel berjalan lancar.
Buka kotak masuk email tujuan yang telah ditentukan di file route untuk melihat hasil pengiriman. Email akan berisi template yang telah dibuat dengan data yang sesuai.
Uji Kirim Email di Laravel Ternyata Mudah!
Selamat DomaiNesians! Kita telah berhasil menyelesaikan seluruh proses uji kirim email di Laravel mulai dari pembuatan class Mailable, template view, konfigurasi route, hingga pengujian akhir. Dengan mengikuti panduan ini, kita dapat memastikan fitur pengiriman email berfungsi optimal sebelum diterapkan pada pengguna sebenarnya. Proses uji kirim email di Laravel yang sistematis ini akan menghemat waktu dan mencegah masalah di kemudian hari. Semoga panduan ini bermanfaat untuk pengembangan aplikasi Laravel berikutnya. Sampai jumpa di artikel dan panduan DomaiNesia berikutnya!

















