Challenge: Membuat Slideshow Homepage Dinamis
Gambaran Umum
Video ini membahas tantangan untuk membuat slideshow di homepage menjadi dinamis — artinya konten slideshow bisa dikelola dari admin WordPress tanpa mengedit kode. Brad menjelaskan dua pendekatan utama dan memperkenalkan ACF Pro (Advanced Custom Fields Pro).
Catatan Brad: Pelajaran ini bersifat historis. Pendekatan modern menggunakan Custom Block Types yang sudah dipelajari di chapter sebelumnya.
Pendekatan 1: Custom Post Type untuk Slides
Buat Custom Post Type khusus bernama "Slides" atau "Slideshow Items":
- Setiap slide = satu post dalam CPT tersebut
- Gunakan ACF (Advanced Custom Fields) untuk menambahkan field custom pada setiap slide:
- Slide Title — judul slide
- Subtitle — subtitle/deskripsi singkat
- Link Text — teks tombol (misal: "Learn More")
- Link URL — URL tujuan tombol
- Photograph — gambar background slide
Kelebihan:
- Jumlah slide tidak terbatas (bisa tambah/hapus slide sesuka hati)
- Setiap slide adalah entitas terpisah yang mudah dikelola
Kekurangan:
- Perlu membuat Custom Post Type baru
- Sedikit lebih kompleks untuk setup awal
Pendekatan 2: ACF Fields pada Front Page
Tambahkan field-field ACF langsung pada halaman Front Page:
- Tidak perlu membuat CPT baru
- Field ditambahkan langsung ke halaman yang sudah ada
Masalah: Jumlah Slide Fixed
Jika menggunakan ACF versi gratis, kamu harus menentukan jumlah field secara tetap. Misalnya harus membuat:
slide_1_title,slide_1_subtitle,slide_1_imageslide_2_title,slide_2_subtitle,slide_2_image- dst.
Jumlah slide tidak bisa dinamis (tidak bisa tambah/hapus seenaknya).
ACF Pro — Solusi untuk Slide Dinamis
ACF Pro adalah versi berbayar dari plugin Advanced Custom Fields yang menambahkan fitur-fitur powerful:
1. Repeater Field
- Memungkinkan pengulangan group field secara dinamis
- User bisa menambah atau menghapus row (baris) sesuai kebutuhan
- Cocok untuk slideshow: setiap row = satu slide dengan field title, subtitle, image, dll.
- Harga: Mulai dari ~$25 AUD (Personal license)
2. Flexible Content Field
- Brad menyebutnya "developer's paradise"
- Mirip repeater, tapi setiap row bisa memiliki tipe konten berbeda
- User bisa memilih tipe konten saat menambah row baru (misal: "Slide with Image", "Slide with Video", "Text Only Slide")
- Sangat powerful untuk layout builder
Contoh Penggunaan Repeater untuk Slideshow:
[Repeater Field: Homepage Slides]
├── Row 1
│ ├── Title: "Welcome to Our University"
│ ├── Subtitle: "The best place to learn"
│ ├── Link Text: "Find Out More"
│ ├── Link URL: "/about"
│ └── Image: [uploaded photo]
├── Row 2
│ ├── Title: "World Class Programs"
│ └── ...
└── [+ Add Row] ← User bisa tambah slide baruKesimpulan
| Pendekatan | Kelebihan | Kekurangan |
|---|---|---|
| CPT untuk Slides | Slide tidak terbatas, terorganisir | Setup lebih kompleks |
| ACF pada Front Page (Free) | Setup mudah | Jumlah slide fixed |
| ACF Pro Repeater | Dinamis, user-friendly | Berbayar ($25 AUD+) |
| Custom Block Types | Pendekatan modern, terintegrasi Gutenberg | Perlu pengetahuan React |
Brad merekomendasikan pendekatan Custom Block Types untuk proyek modern, tapi kedua pendekatan ACF di atas tetap valid dan banyak digunakan.