Ingin membuat website dinamis dengan mudah? Pernah dengar tentang CMS (Content Management System)? Jika ya, dan Anda familiar dengan framework PHP Laravel, maka artikel Laravel Voyager Tutorial Bahasa Indonesia: CMS Laravel yang Mudah Digunakan ini sangat tepat untuk Anda! Kita akan membahas apa itu Voyager, mengapa populer, dan bagaimana cara menggunakannya untuk membangun website impian Anda, langkah demi langkah. Jangan khawatir jika Anda pemula, tutorial ini dirancang agar mudah dipahami. Siap untuk memulai? Yuk, kita mulai!
Apa Itu Laravel Voyager dan Mengapa Begitu Populer?
Voyager adalah admin panel yang lengkap dan siap pakai (ready-to-go) untuk aplikasi Laravel Anda. Bayangkan Voyager sebagai kokpit kontrol website Anda. Tanpa Voyager, Anda harus membangun admin panel dari awal, yang membutuhkan waktu dan usaha yang signifikan. Dengan Voyager, Anda mendapatkan antarmuka yang intuitif untuk mengelola database, mengatur konten, dan mengontrol fungsionalitas website Anda.
Lalu, mengapa Voyager begitu populer?
- Kemudahan Penggunaan: Voyager dirancang agar mudah digunakan, bahkan oleh pengguna yang tidak memiliki pengalaman coding yang mendalam. Antarmukanya intuitif dan mudah dipelajari.
- Fitur Lengkap: Voyager menyediakan berbagai fitur penting untuk mengelola website, seperti manajemen pengguna, manajemen menu, manajemen media, dan yang paling penting, manajemen data (CRUD – Create, Read, Update, Delete).
- Fleksibilitas: Meskipun sudah siap pakai, Voyager tetap fleksibel. Anda bisa menyesuaikan dan memperluas fungsionalitasnya sesuai kebutuhan. Anda bisa menambahkan field khusus, mengubah tampilan, dan mengintegrasikannya dengan kode kustom Anda.
- Komunitas yang Aktif: Voyager memiliki komunitas pengguna yang besar dan aktif. Jika Anda menemui masalah atau membutuhkan bantuan, Anda bisa dengan mudah menemukan solusi di forum atau grup komunitas.
- Hemat Waktu dan Biaya: Dengan Voyager, Anda tidak perlu membangun admin panel dari awal. Ini menghemat waktu dan biaya pengembangan secara signifikan. Anda bisa fokus pada pengembangan fitur-fitur utama website Anda.
Singkatnya, Voyager adalah solusi praktis dan efisien untuk membangun website dinamis berbasis Laravel dengan cepat dan mudah.
Persiapan Instalasi: Syarat dan Langkah Awal Menggunakan Voyager
Sebelum memulai tutorial Laravel Voyager Tutorial Bahasa Indonesia: CMS Laravel yang Mudah Digunakan secara mendalam, pastikan Anda telah memenuhi beberapa persyaratan berikut:
- Laravel Terinstal: Tentu saja! Voyager adalah package Laravel, jadi pastikan Anda sudah memiliki aplikasi Laravel yang terinstal dan berjalan dengan baik. Jika belum, Anda bisa mengikuti dokumentasi resmi Laravel untuk proses instalasi.
- PHP Versi yang Kompatibel: Voyager memerlukan versi PHP tertentu untuk berjalan dengan baik. Biasanya, Voyager mendukung versi PHP yang didukung oleh Laravel yang Anda gunakan. Periksa dokumentasi Voyager untuk memastikan kompatibilitas.
- Database: Voyager membutuhkan database untuk menyimpan data website Anda. Anda bisa menggunakan MySQL, PostgreSQL, SQLite, atau database lain yang didukung oleh Laravel.
- Composer: Composer adalah dependency manager untuk PHP. Anda akan menggunakan Composer untuk menginstal Voyager dan dependensinya.
Langkah-langkah instalasi Voyager:
-
Buka Terminal/Command Prompt: Arahkan ke direktori proyek Laravel Anda.
-
Instal Voyager melalui Composer: Jalankan perintah berikut di terminal:
composer require tcg/voyagerPerintah ini akan mengunduh dan menginstal Voyager dan semua dependensinya.
-
Konfigurasi Database: Pastikan Anda sudah mengkonfigurasi koneksi database di file
.envLaravel Anda. Atur variabel-variabel sepertiDB_CONNECTION,DB_HOST,DB_PORT,DB_DATABASE,DB_USERNAME, danDB_PASSWORDsesuai dengan detail database Anda. -
Instalasi Voyager (Menggunakan Artisan): Jalankan perintah berikut untuk menginstal Voyager dan membuat tabel-tabel database yang diperlukan:
php artisan voyager:installPerintah ini akan membuat tabel-tabel database, membuat user admin default (email:
[email protected], password:password), dan mengkonfigurasi beberapa pengaturan dasar. -
Publikasi Assets (Optional): Jika Anda ingin menyesuaikan tampilan Voyager, Anda bisa mempublikasikan assets Voyager ke direktori
publicAnda dengan perintah:php artisan vendor:publish --tag=voyager_assets -
Jalankan Migrasi (Jika Diperlukan): Jika instalasi Voyager tidak secara otomatis menjalankan migrasi, Anda bisa menjalankannya secara manual:
php artisan migrate -
Akses Admin Panel: Setelah instalasi selesai, Anda bisa mengakses admin panel Voyager melalui URL
/admin(contoh:http://localhost:8000/admin). Login menggunakan email dan password admin default (atau user yang Anda buat).
Selamat! Anda telah berhasil menginstal Voyager. Sekarang, mari kita jelajahi fitur-fitur yang ditawarkannya.
Menjelajahi Fitur Utama: Dashboard, Media Manager, dan Menu Builder
Setelah berhasil menginstal Voyager, mari kita lihat beberapa fitur utama yang akan sering Anda gunakan:
-
Dashboard: Halaman utama admin panel Voyager. Dashboard menampilkan informasi ringkas tentang website Anda, seperti jumlah pengguna, jumlah posting, dan statistik lainnya. Anda juga bisa menambahkan widget kustom ke dashboard untuk menampilkan informasi yang lebih relevan dengan kebutuhan Anda.
-
Media Manager: Fitur untuk mengunggah, mengelola, dan mengorganisasikan file media (gambar, video, dokumen, dll.). Anda bisa membuat folder untuk mengelompokkan file media, mengubah nama file, dan menghapus file yang tidak diperlukan. Media Manager sangat penting untuk mengelola aset visual website Anda.
-
Menu Builder: Fitur untuk membuat dan mengelola menu navigasi website Anda. Anda bisa menambahkan item menu, mengatur urutan item menu, dan menautkan item menu ke halaman, posting, atau URL eksternal. Menu Builder memudahkan Anda untuk mengatur struktur navigasi website Anda.
Selain fitur-fitur di atas, Voyager juga memiliki fitur-fitur lain yang tak kalah pentingnya, seperti:
- Role and Permission Manager: Mengelola hak akses pengguna. Anda bisa membuat role (misalnya, admin, editor, author) dan memberikan permission (hak akses) yang berbeda kepada setiap role.
- Settings: Mengatur berbagai pengaturan website, seperti nama website, deskripsi website, logo website, dan lain-lain.
- Database Manager (BREAD): Ini adalah fitur kunci Voyager, yang akan kita bahas lebih detail di bagian selanjutnya.
BREAD: Jantungnya Voyager untuk Manajemen Data CRUD
BREAD adalah singkatan dari Browse, Read, Edit, Add, dan Delete. Ini adalah inti dari fitur manajemen data di Voyager. Dengan BREAD, Anda bisa dengan mudah membuat dan mengelola CRUD (Create, Read, Update, Delete) untuk tabel-tabel database Anda.
Bagaimana cara kerja BREAD?
Voyager secara otomatis mendeteksi tabel-tabel database yang ada. Anda kemudian bisa menggunakan antarmuka BREAD untuk:
- Browse: Melihat daftar data dalam tabel.
- Read: Melihat detail data secara individual.
- Edit: Mengubah data yang ada.
- Add: Menambahkan data baru.
- Delete: Menghapus data.
Contoh Penggunaan BREAD:
Misalkan Anda memiliki tabel posts di database Anda. Dengan BREAD, Anda bisa:
- Membuat antarmuka untuk melihat daftar posting (Browse).
- Membuat antarmuka untuk melihat detail setiap posting (Read).
- Membuat antarmuka untuk mengedit posting (Edit).
- Membuat antarmuka untuk menambahkan posting baru (Add).
- Membuat tombol untuk menghapus posting (Delete).
Keuntungan Menggunakan BREAD:
- Cepat dan Mudah: Membuat antarmuka CRUD hanya membutuhkan beberapa klik.
- Tidak Perlu Coding: Anda tidak perlu menulis kode untuk membuat antarmuka CRUD dasar.
- Konfigurasi yang Fleksibel: Anda bisa mengkonfigurasi tampilan dan fungsionalitas antarmuka CRUD sesuai kebutuhan Anda. Anda bisa menambahkan field khusus, mengubah tipe field, dan mengatur validasi data.
BREAD adalah fitur yang sangat powerful yang memungkinkan Anda untuk mengelola data website Anda dengan mudah dan efisien.
Membuat CRUD dengan BREAD: Langkah Demi Langkah Mengelola Data
Mari kita praktikkan membuat CRUD untuk tabel posts menggunakan BREAD. Anggap saja tabel posts memiliki field seperti id, title, content, author_id, dan created_at.
-
Akses BREAD: Di admin panel Voyager, klik menu “Tools” dan pilih “BREAD”.
-
Pilih Tabel
posts: Cari dan pilih tabelpostsdari daftar tabel yang tersedia. -
Konfigurasi BREAD: Anda akan melihat berbagai opsi konfigurasi BREAD. Berikut beberapa opsi penting:
- Display Name Singular: Nama tunggal untuk data (misalnya, “Post”).
- Display Name Plural: Nama jamak untuk data (misalnya, “Posts”).
- Icon: Pilih icon yang sesuai untuk data.
- Read: Aktifkan jika Anda ingin mengizinkan melihat detail data.
- Edit: Aktifkan jika Anda ingin mengizinkan mengedit data.
- Add: Aktifkan jika Anda ingin mengizinkan menambahkan data baru.
- Delete: Aktifkan jika Anda ingin mengizinkan menghapus data.
- Browse: Aktifkan jika Anda ingin mengizinkan melihat daftar data.
-
Konfigurasi Fields: Untuk setiap field di tabel
posts, Anda bisa mengkonfigurasi tipe field, label, validasi, dan lain-lain. Misalnya:title: Tipe field:Text. Label: “Judul”. Validasi:required.content: Tipe field:Rich Text Box. Label: “Konten”. Validasi:required.author_id: Tipe field:Number. Label: “ID Penulis”. Anda bisa mengkonfigurasikan ini sebagai relationship ke tabelusers(dibahas di bagian selanjutnya).created_at: Biasanya tipe field ini adalahTimestampdan diaturreadonly.
-
Simpan BREAD: Setelah selesai mengkonfigurasi, klik tombol “Save BREAD”.
-
Akses CRUD: Anda sekarang bisa mengakses antarmuka CRUD untuk
postsmelalui menu di admin panel Voyager. Anda bisa menambahkan, mengedit, menghapus, dan melihat dataposts.
Dengan beberapa langkah sederhana, Anda telah berhasil membuat CRUD untuk tabel posts menggunakan BREAD. Ulangi proses ini untuk tabel-tabel lain di database Anda.
Relationships: Menghubungkan Tabel Database dengan Voyager
Database seringkali memiliki relasi antar tabel. Misalnya, tabel posts mungkin memiliki relasi “belongs to” ke tabel users (setiap posting ditulis oleh seorang user). Voyager mendukung relasi antar tabel, sehingga Anda bisa mengelola data relasional dengan mudah.
Jenis-jenis Relasi yang Didukung Voyager:
- Belongs To: Satu-ke-Satu atau Satu-ke-Banyak. Contoh: Sebuah
postbelongs to satuuser. - Has One: Satu-ke-Satu. Contoh: Seorang
userhas oneprofile. - Has Many: Satu-ke-Banyak. Contoh: Seorang
userhas manyposts. - Belongs To Many: Banyak-ke-Banyak. Contoh: Sebuah
postbelongs to manycategories.
Cara Menggunakan Relasi di Voyager BREAD:
Saat mengkonfigurasi BREAD untuk sebuah tabel, Anda bisa menentukan tipe field sebagai “Relationship”. Kemudian, Anda perlu mengkonfigurasi:
- Which Table: Tabel yang akan dihubungkan.
- Relationship Type: Jenis relasi (Belongs To, Has One, Has Many, Belongs To Many).
- Column: Kolom pada tabel saat ini yang digunakan sebagai foreign key.
- Display Column: Kolom pada tabel yang dihubungkan yang ingin Anda tampilkan (misalnya,
namedari tabelusers).
Contoh:
Pada contoh tabel posts di atas, kita ingin menghubungkan author_id dengan tabel users. Kita konfigurasi field author_id sebagai berikut:
- Type:
Relationship - Which Table:
users - Relationship Type:
Belongs To - Column:
author_id - Display Column:
name
Dengan konfigurasi ini, saat Anda menambahkan atau mengedit posting, Anda akan melihat dropdown yang menampilkan daftar user dari tabel users. Anda bisa memilih user yang menjadi penulis posting tersebut.
Customization: Mempercantik dan Mengubah Tampilan Voyager
Meskipun Voyager sudah menyediakan tampilan default yang cukup baik, Anda mungkin ingin menyesuaikan tampilannya agar sesuai dengan branding website Anda. Voyager memungkinkan Anda untuk melakukan kustomisasi tampilan dengan beberapa cara:
- CSS: Anda bisa menambahkan CSS kustom untuk mengubah style elemen-elemen di Voyager. Anda bisa menambahkan CSS langsung di file
resources/views/vendor/voyager/master.blade.phpatau membuat file CSS terpisah dan menautkannya di file tersebut. - Views: Anda bisa meng-override views default Voyager untuk mengubah struktur HTML dan tampilan elemen-elemen di Voyager. Untuk meng-override sebuah view, Anda perlu membuat file dengan path yang sama di direktori
resources/views/vendor/voyager. - Hooks: Voyager menyediakan hooks yang memungkinkan Anda untuk menjalankan kode kustom pada berbagai titik di proses rendering. Anda bisa menggunakan hooks untuk menambahkan fungsionalitas tambahan atau mengubah data yang ditampilkan.
Contoh Kustomisasi:
-
Mengubah Warna Tema: Anda bisa mengubah warna tema Voyager dengan menambahkan CSS kustom. Misalnya, untuk mengubah warna background header, Anda bisa menambahkan kode CSS berikut:
.page-header { background-color: #007bff; } -
Mengubah Logo: Anda bisa mengubah logo Voyager dengan meng-override view
resources/views/vendor/voyager/partials/app-sidebar.blade.phpdan mengganti tag<img>yang menampilkan logo default dengan tag<img>yang menampilkan logo Anda.
Dengan kustomisasi tampilan, Anda bisa membuat admin panel Voyager terlihat lebih profesional dan sesuai dengan branding website Anda.
Security: Tips Keamanan Penting untuk Voyager Laravel Anda
Keamanan adalah aspek penting yang tidak boleh diabaikan. Berikut beberapa tips keamanan penting untuk Voyager Laravel Anda:
- Ubah Password Default: Segera ubah password default user admin (
[email protected]) setelah instalasi. - Gunakan Password yang Kuat: Gunakan password yang kuat dan unik untuk semua user account.
- Batasi Akses: Batasi akses ke admin panel Voyager hanya untuk user yang benar-benar membutuhkannya. Gunakan role dan permission manager untuk mengontrol hak akses user.
- Aktifkan HTTPS: Pastikan website Anda menggunakan HTTPS untuk mengenkripsi semua komunikasi antara browser dan server.
- Update Voyager dan Laravel Secara Teratur: Update Voyager dan Laravel ke versi terbaru untuk mendapatkan patch keamanan terbaru.
- Lindungi File
.env: File.envberisi informasi sensitif, seperti koneksi database dan API key. Pastikan file ini tidak bisa diakses oleh publik. - Validasi Input: Validasi semua input user untuk mencegah serangan XSS dan SQL injection.
- Gunakan Middleware: Gunakan middleware untuk melindungi rute-rute admin panel Voyager.
Dengan menerapkan tips-tips keamanan ini, Anda bisa meminimalkan risiko keamanan dan melindungi website Anda dari serangan.
Kesimpulan: Voyager, Solusi CMS Laravel yang Efisien dan Mudah
Dalam Laravel Voyager Tutorial Bahasa Indonesia: CMS Laravel yang Mudah Digunakan ini, kita telah membahas secara mendalam tentang Voyager, mulai dari pengenalan, instalasi, fitur-fitur utama, BREAD, relasi antar tabel, kustomisasi tampilan, hingga tips keamanan.
Voyager adalah solusi CMS Laravel yang efisien dan mudah digunakan. Dengan Voyager, Anda bisa membangun admin panel untuk website Anda dengan cepat dan mudah, tanpa perlu menulis kode dari awal. Ini menghemat waktu dan biaya pengembangan secara signifikan.
Jika Anda sedang mencari CMS untuk proyek Laravel Anda, Voyager adalah pilihan yang sangat baik. Dengan fitur-fiturnya yang lengkap, kemudahan penggunaan, dan fleksibilitas yang tinggi, Voyager akan membantu Anda membangun website yang dinamis dan profesional.
Jangan ragu untuk menjelajahi dokumentasi resmi Voyager dan komunitasnya untuk mempelajari lebih lanjut tentang Voyager. Selamat mencoba dan semoga sukses!







