Panduan lengkap struktur file, variabel, dan generator prompt untuk membuat tema baru.
Tema diletakkan di dalam folder content/themes/nama_tema/. Sebuah tema wajib memiliki 9 file berikut:
header.php - Bagian atas web (<head>, navigasi, pembuka <body>)footer.php - Bagian bawah web (penutup </body>, copyright)index.php - Halaman Beranda (Merender Homepage Builder)single.php - Halaman baca artikel detailproduct.php - Halaman detail produkpage.php - Halaman statis / Landing Pagecategory.php - Halaman daftar konten per kategoriarchive-article.php - Halaman daftar semua artikelarchive-product.php - Halaman daftar semua produkSetiap file tema HARUS diawali dengan kode ini untuk mencegah akses langsung dari luar:
<?php if(!defined('RUNNING_IN_WEB')) exit(); ?>
Anda tidak perlu melakukan query database manual. Semua data sudah disiapkan oleh sistem.
$settings['site_name'], $settings['site_logo'], $settings['color_primary'], $settings['slug_article']<title>.single.php, product.php, page.php. Berisi: title, content, feature_image, price, wa_number, dll.category.php.archive-*.php.index.php. Berisi susunan block dari Homepage Builder.get_menus('header') - Mengembalikan array menu navigasi header.get_menus('footer') - Mengembalikan array menu navigasi footer.get_posts($type, $limit, $offset) - Mengambil daftar konten. Contoh: get_posts('article', 5, 0).generate_url($slug, $type, $settings) - Mengubah slug menjadi URL yang benar sesuai pengaturan permalink.index.php): Looping variabel $layout dan render berdasarkan tipenya: html, full_html, hero, image, divider, articles, products. Jika full_html ada di urutan pertama, echo dan exit.page.php): Cek apakah konten dimulai dengan <!DOCTYPE. Jika ya, echo langsung dan exit (abaikan tema).header.php): Harus berisi logika deteksi $post untuk menghasilkan Meta Tag (OG, Twitter) dan JSON-LD (Article, Product) secara dinamis.Ganti teks di dalam kurung siku [...] sesuai keinginan Anda, lalu klik tombol Copy. Tempelkan prompt tersebut ke ChatGPT/Claude/Gemini untuk generate tema baru.