Kustomisasi & Ekstensi Field

Kustomisasi & Mengembangkan Field Baru

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:

PHP
$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:

PHP
$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>'
);
CAUTION

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:

  1. Buka file inti madoptions/madoptions.php.
  2. Cari method privat renderfield( $field, $options ).
  3. Tambahkan cabang case 'tipebaru': ke dalam blok switch ( $field['type'] ).
  4. Tulis markup HTML input sesuai dengan atribut name {$this->optionname}[{$field['id']}].
  5. Tambahkan interaktivitas JS (jika tipe field membutuhkan library JS) ke dalam file madoptions/assets/js/madoptions.js.
  6. Perbarui fungsi sanitasi sanitizeoptions() jika field tersebut menyimpan struktur data non-string (seperti array nilai ganda).