Apa yang Anda lihat adalah bagaimana Drupal merepresentasikan bidang dalam formulir. Itu rusak seperti ini:
- Anak-anak dari array luar,
$form['field_back']['und']
( 'und'
untuk 'undefined'
), adalah berbagai bahasa yang telah diterjemahkan oleh bidang ini. Dalam Drupal, Anda dianjurkan untuk digunakan LANGUAGE_NONE
untuk 'und'
dalam kode.
- Anak-anak di dalam setiap larik bahasa, misalnya
$form['field_feedback']['und'][0]
, mewakili entri yang berbeda untuk bidang tersebut. Sebagai contoh, jika lapangan memiliki kardinalitas terbatas, dan ada beberapa entri untuk bidang itu, mereka akan menunjukkan sebagai $form['field_feedback']['und'][0]
, $form['field_feedback']['und'][1]
, dll
- Akhirnya Anda memiliki elemen input bentuk, untuk nilai bidang itu sendiri, misalnya
$form['field_feedback']['und'][0]['value']
. Dalam hal ini nama kolomnya adalah value
, untuk tipe bidang referensi simpul nid
, dan seterusnya. Jika suatu bidang memiliki beberapa kolom data yang terkait dengannya, Anda juga akan melihat lebih banyak anak. Ini diwakili oleh bidang teks / kotak pilih / widget khusus, dan pada akhirnya akan memberikan nilai untuk bidang tersebut.
Fakta bahwa judul telah ditambahkan ke berbagai elemen di seluruh hierarki adalah insidental jujur. Apakah atau tidak judul-judul tersebut ditampilkan pada formulir adalah ke pengaturan tertentu dari array render di mana masing #title
- masing berisi.
Untuk mengubah judul pada widget form aktual, Anda hanya perlu khawatir tentang elemen form di bagian paling bawah array: yaitu elemen input aktual ( $form['field_feedback']['und'][0]['value']
, dll.).
Mungkin perlu dicatat bahwa elemen / widget yang digunakan untuk bidang tertentu mungkin cukup kompleks. Jika Anda belum memilikinya, Anda harus menginstal modul Devel dan menggunakan dpm()
fungsi untuk memeriksa $form
array; yang akan menunjukkan dengan tepat di mana dalam array elemen yang Anda coba targetkan.