Kustomisasi & Mengembangkan Field Baru
Kustomisasi Header & Footer Panel
MadOptions menyediakan dua method bawaan untuk menyuntikkan HTML kustom pada bagian atas dan bawah panel admin:
header-html” class=”mkdocs-anchor” aria-hidden=”true”># 1. set_header( $html )
Menampilkan pesan informasi, banner instruksi, atau logo khusus di bawah judul panel dan di atas navigasi tab:
$panel->set_header(
'<div class="notice notice-info inline" style="margin: 0 0 20px 0;">' .
'<p>💡 <strong>Tips:</strong> Klik tombol <em>Simpan Perubahan</em> di kanan bawah setelah mengubah konfigurasi.</p>' .
'</div>'
);
footer-html” class=”mkdocs-anchor” aria-hidden=”true”># 2. set_footer( $html )
Menampilkan teks hak cipta, status versi, atau tautan bantuan di bagian paling bawah panel:
$panel->set_footer(
'<p style="color:#787c82; font-size:13px; margin-top:20px;">' .
'<strong>Xionic Theme Framework</strong> v1.0 — Didukung oleh engine MadOptions.' .
'</p>'
);
Konten yang dikirimkan ke method setheader() dan setfooter() tidak disanitasi secara otomatis. Hindari mencetak variabel input pengguna atau data mentah dari parameter URL tanpa sanitasi yang aman.
Mengembangkan Tipe Field Baru
Jika proyek Anda membutuhkan tipe field baru yang belum tersedia secara bawaan (seperti Radio Button Group, Date Picker, Code Editor, atau Multi-Checkbox), Anda dapat memperluasnya dengan langkah-langkah berikut:
- Buka file inti
madoptions/madoptions.php. - Cari method privat
renderfield( $field, $options ). - Tambahkan cabang
case 'tipebaru':ke dalam blokswitch ( $field['type'] ). - Tulis markup HTML input sesuai dengan atribut name
{$this->optionname}[{$field['id']}]. - Tambahkan interaktivitas JS (jika tipe field membutuhkan library JS) ke dalam file
madoptions/assets/js/madoptions.js. - Perbarui fungsi sanitasi
sanitizeoptions()jika field tersebut menyimpan struktur data non-string (seperti array nilai ganda).