Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Belajar WordPress: Menambah Field Form Baru pada Halaman Add New Media

Posted on October 11, 2011

Sudah satu bulan ini saya fokus mengembangkan sebuah sistem informasi yang murni masuk dalam kerangka Framework WordPress. Salah satu bagian penting yang harus saya selesaikan pada pengembangan sistem kali ini adalah halaman upload file yang disertai dengan beberapa field baru, yaitu field kategori dokumen dalam bentuk combobox dan field kode dokumen dalam bentuk text box.

Saya tidak ingin mengembangkan sendiri halaman tersebut karena akan jadi tidak efisien, WordPress telah memiliki sendiri halaman upload file yang sudah matang dengan kemampuan Upload berbasis flash dan html berikut skema penyimpanannya yang bagus. Solusi yang saya temukan, kita harus melakukan filtering pada halaman tersebut guna menambahkan dua field baru. Function yang harus difilter kali ini attachment_fields_to_edit dan attachment_fields_to_save.

Berikut implementasi riilnya:

[sourcecode language=”php”]
function wpbpm_add_customfield_kategori_dokumeniso($form_fields, $post) {

if(get_post_meta($post->ID, "_dokumeniso_cat", true)=="1"){ $selected1 = ‘selected="selected"’; }
if(get_post_meta($post->ID, "_dokumeniso_cat", true)=="2"){ $selected2 = ‘selected="selected"’; }
if(get_post_meta($post->ID, "_dokumeniso_cat", true)=="3"){ $selected3 = ‘selected="selected"’; }
if(get_post_meta($post->ID, "_dokumeniso_cat", true)=="4"){ $selected4 = ‘selected="selected"’; }
if(get_post_meta($post->ID, "_dokumeniso_cat", true)=="5"){ $selected5 = ‘selected="selected"’; }
if(get_post_meta($post->ID, "_dokumeniso_cat", true)=="6"){ $selected6 = ‘selected="selected"’; }

$html = ‘

<select name="attachments[‘.$post->ID.’][wpbpm_dokumeniso_cat]"> <option value=""> — Pilih — </option></select>
<select name="attachments[‘.$post->ID.’][wpbpm_dokumeniso_cat]"> <option value="1">Instruksi Kerja (IK)</option></select>
<select name="attachments[‘.$post->ID.’][wpbpm_dokumeniso_cat]"> <option value="2">Kebijakan Mutu (KM)</option></select>
<select name="attachments[‘.$post->ID.’][wpbpm_dokumeniso_cat]"> <option value="3">Manual Mutu (MM)</option></select>
<select name="attachments[‘.$post->ID.’][wpbpm_dokumeniso_cat]"> <option value="4">Prosedur Mutu (PM)</option></select>
<select name="attachments[‘.$post->ID.’][wpbpm_dokumeniso_cat]"> <option value="5">Rencana Mutu (RM)</option></select>
<select name="attachments[‘.$post->ID.’][wpbpm_dokumeniso_cat]"> <option value="6">Sasaran Mutu (SM)</option></select>

‘;

$form_fields["wpbpm_dokumeniso_cat"] = array(
"label" => __("Kategori Dokumen ISO"),
"input" => "html", // this is default if "input" is omitted
"html" => $html,
"value" => get_post_meta($post->ID, "_dokumeniso_cat", true),
"helps" => __("Pilih salah satu kategori dokumen ISO untuk dokumen ini.")
);

$form_fields["wpbpm_dokumeniso_kode"] = array(
"label" => __("Kode Dokumen ISO"),
"input" => "text",
"value" => get_post_meta($post->ID, "_dokumeniso_kode",true),
"help" => __("Isikan kode dokumen ISO.")
);
return $form_fields;
}

// now attach our function to the hook
add_filter("attachment_fields_to_edit", "wpbpm_add_customfield_kategori_dokumeniso", null, 2);
[/sourcecode]

Skrip diatas, tuliskan dalam file function theme anda atau pada salah satu plugin yang anda kembangkan. Fungsi tersebut akan menambahkan fied berupa combo box dan text box pada field edit properties file yang diupload via halaman upload bawaan milik WordPress. Untuk fungsi penyimpanannya, silakan lihat skrip berikut:

[sourcecode language=”php”]
function wpbpm_save_customfield_kategori_dokumeniso($post, $attachment) {
// $attachment part of the form $_POST ($_POST[attachments][postID])
// $post[‘post_type’] == ‘attachment’
if( isset($attachment[‘wpbpm_dokumeniso_cat’]) ){
// update_post_meta(postID, meta_key, meta_value);
update_post_meta($post[‘ID’], ‘_dokumeniso_cat’, $attachment[‘wpbpm_dokumeniso_cat’]);
}

if( isset($attachment[‘wpbpm_dokumeniso_kode’]) ){
// update_post_meta(postID, meta_key, meta_value);
update_post_meta($post[‘ID’], ‘_dokumeniso_kode’, $attachment[‘wpbpm_dokumeniso_kode’]);
}
return $post;
}
// now attach our function to the hook.
add_filter("attachment_fields_to_save", "wpbpm_save_customfield_kategori_dokumeniso", null , 2);
[/sourcecode]

Dengan solusi ini, setiap file attachment yang kita unggah akan memiliki dua metadata tambahan yaitu _dokumeniso_cat dan _dokumeniso_kode, dan dapat kita olah lebih lanjut dalam halaman lain.

Screenshootnya:

Terbaru

  • Apa Itu Battle Emote Jefri Nichol dan Om Telolet Om di MLBB? Ini Penjelasannya
  • Apa itu Game Luna Mobile dan Bagaimana Cara Menangnya?
  • Apa Itu Kompensasi Sistem Trail Mobile Legends? Ini Penjelasan dan Cara Klaim Hadiahnya
  • Apa Itu Update Google Pixel 2 Desember 2025? Ini Penjelasannya!
  • Ini Cara Reset Desil di Aplikasi Cek Bansos Biar Valid (Update Januari 2026)
  • Apa Itu EZNET Wireless dan Fiber Optic? Ini Perbedaan dan Pengertian Lengkapnya
  • Pengertian Rework Magic Wheel dan Rank Mythic Eternal: Apa itu Perubahan Sistem Baru Mobile Legends?
  • Apa Itu Diamond Combo? Pengertian Game Puzzle Viral yang Katanya Bisa Hasilkan Cuan
  • Apa Itu Showbox? Pengertian, Fungsi, dan Cara Menggunakannya di Android
  • Cara Mengatasi Fitur Monet Facebook Pro Tiba-tiba Hilang
  • Google Bikin Kejutan! Pixel 10 Diskon Gila-gilaan di YouTube Premium
  • Apa Itu Google CC? Ini Pengertian Agen Produktivitas AI Eksperimental Terbaru
  • Apa Itu Ultras Seblak di eSport? Pengertian dan Fenomena Baru Suporter eSport
  • Android 16: Animasi Folder Baru yang Mengubah Cara Kita Berinteraksi!
  • Android 16: Notifikasi Lokasi ‘Blue Dot’ – Fitur Baru yang Perlu Kalian Ketahui!
  • Apa Itu Risiko Auto Click di Event Spongebob Mobile Legends? Ini Penjelasannya
  • Apa Itu Fitur Eksperimental Windows? Ini Pengertian dan Cara Menonaktifkannya
  • Apa Itu Android 16 Beta 1? Ini Pengertian dan Fitur Terbarunya
  • Belum Tahu? Ini Trik Supaya Bisa Dapat Skin Patrick Mobile Legends dengan Harga Murah
  • Pixel Desember 2025: Update Besar Siap Meluncur, Apa yang Baru?
  • Apa Itu HYFE XL Prioritas? Ini Pengertian, FUP, dan Realita Kecepatannya
  • Pengertian Render dan Convert: Apa Bedanya dalam Video Editing?
  • Cara Mengatasi Aplikasi Office yang Terus Muncul dan Menerapkan Perubahan Pengaturan Privasi
  • Pixel Launcher Mendapatkan Sentuhan Google Search Baru!
  • Penyebab Aplikasi Wondr BNI Tidak Bisa Dibuka
  • Kode 0425 Daerah Mana? Ini Pengertian dan Fakta Sebenarnya
  • Apa Itu SSS CapCut? Pengertian Downloader Video Tanpa Watermark yang Wajib Kalian Tahu
  • Apa Itu Paket GamesMAX Telkomsel? Ini Pengertian dan Fungsinya Bagi Gamers
  • Apa Itu Menu Plus di Google Search? Ini Pengertian dan Fungsinya
  • Apa Itu Lepas Kolpri? Ini Pengertian dan Fenomenanya di Dunia Gaming
  • Apa Itu AI Kill Switch di Firefox? Ini Pengertian dan Detail Fitur Terbarunya
  • Apa Itu Platform Modular Intel Alder Lake N (N100)? Ini Pengertian dan Spesifikasinya
  • Apa Itu Armbian Imager? Pengertian Utilitas Flashing Resmi untuk Perangkat ARM Kalian
  • Apa Itu OpenShot 3.4? Pengertian dan Fitur LUT Terbaru untuk Grading Warna
  • Flatpak 1.16.2: Sandbox Baru untuk GPU Intel Xe dan VA-API
  • Apa Itu Migrasi Pod di RunPod? Ini Pengertian dan Cara Kerjanya
  • Loading Model AI Lama? Coba Fitur Cached Models RunPod Ini, Hemat Waktu & Biaya!
  • Replicate Diakuisisi Cloudflare? Tenang, Ini Justru Kabar Baik Buat Developer AI
  • Apa Itu Nemotron-3 Nano? Pengertian Model Bahasa Ringkas dan Hasil Uji Cobanya
  • Prompt AI Dapur Aestetik
  • Apa Itu “I Am Not a Robot – reCAPTCHA Verification ID: 2165”? Ini Pengertian dan Bahayanya
  • Apa Itu Serangan Clop Ransomware pada CentreStack? Ini Pengertian dan Dampaknya
  • Apa Itu E-Note? Pengertian Platform Kripto yang Baru Saja Disita FBI
  • Pengertian CVE-2025-37164: Celah Keamanan Fatal di HPE OneView Adalah?
  • Apa Itu APT137? Pengertian Kelompok Peretas Tiongkok yang Mengincar Windows
Beli Morning Star Kursi Gaming/Kantor disini: https://s.shopee.co.id/805iTUOPRV
Beli Pemotong Rumput dengan Baterai IRONHOOF 588V Mesin Potong Rumput 88V disini https://s.shopee.co.id/70DBGTHtuJ

©2025 emka.web.id | Design: Newspaperly WordPress Theme