Bagaimana saya bisa menyembunyikan bidang saat membuat simpul, tetapi menampilkannya saat mengedit mode?
Bagaimana saya bisa menyembunyikan bidang saat membuat simpul, tetapi menampilkannya saat mengedit mode?
Jawaban:
Jika saya memahami pertanyaan Anda, saya pikir Anda dapat menggunakan modul khusus (dalam contoh ini, nama modulnya test_remove_field
) dan menyertakan kode berikut:
function test_remove_field_form_alter(&$form, &$form_state) {
if (arg(0) == 'node' && arg(1) == 'add') {
$form['field_test']['#access'] = 0;
}
}
Catatan: ingat itu field_test
harus nama bidang Anda masing-masing.
The Lapangan Perizinan modul memungkinkan Anda untuk izin tingkat lapangan set:
Anda bisa menggunakan opsi ini untuk mengaktifkan izin berbasis peran untuk bidang.
Ketika izin diaktifkan, akses ke bidang ini ditolak secara default dan izin eksplisit harus diberikan kepada peran pengguna yang tepat dari halaman administrasi izin. Di sisi lain, ketika opsi ini dinonaktifkan, izin bidang diwarisi dari tampilan konten dan / atau edit izin. Sebagai contoh, pengguna yang diizinkan untuk melihat simpul tertentu juga akan dapat melihat bidang ini, dan sebagainya.
Izin bidang
Saya akan menggunakan hook_form_alter () dan mengatur ['#access']
properti FALSE
seperti jawaban oleh @ moon.watcher.
Jika Anda berada di Drupal 6, Anda memerlukan modul untuk melakukan ini. Di Drupal 7 Anda dapat memanggil hook_form_alter () dari templat Anda.
Ini adalah kasus penggunaan untuk Modul Dukungan Formulir Aturan - https://www.drupal.org/project/rules_forms .
Fitur termasuk:
- Aktifkan acara untuk pembuatan formulir, validasi, dan pengiriman berdasarkan bentuk demi bentuk.
- Targetkan elemen formulir individual atau seluruh formulir dalam kondisi dan tindakan. Memanipulasi atribut elemen bentuk seperti judul, deskripsi, berat, dan lainnya.
- Validasi nilai-nilai elemen formulir selama validasi formulir.
- Setel kesalahan formulir saat validasi berbasis aturan gagal.
- Mengarahkan pengguna ke halaman lain setelah melihat atau mengirimkan formulir.
- Periksa atribut elemen dalam bentuk aktif dengan alat inspeksi elemen.