Bagaimana saya bisa menambahkan kondisi baru di atas kondisi yang ada yang menentukan apakah item menu terlihat? Ketentuan ini tidak boleh terbatas pada pengaturan izin.
Sebagai contoh use case (belum tentu alasan untuk pertanyaan ini): Misalkan saya memiliki tipe konten yang pengguna hanya diperbolehkan membuat satu node. Saya memiliki item menu untuk menambahkan jenis konten itu. Tetapi jika pengguna telah membuat simpul dari tipe konten itu, saya ingin menyembunyikan item menu. Pikiran pertama saya adalah menjalankan kueri untuk memeriksa keberadaan simpul yang dibuat oleh pengguna saat ini yang merupakan tipe konten tertentu. Jika ada, sembunyikan item menu.
Saya akan berpikir fungsionalitas jenis ini harus masuk hook_menu_alter()
dan menambahkan logika yang diperlukan di sana. Tapi saya tidak yakin bagaimana melakukannya tanpa melewati pemeriksaan yang ada, seperti memeriksa apakah pengguna memiliki izin untuk membuat jenis konten itu. Apakah saya harus memasukkan logika itu ke dalam kondisi saya sendiri? Atau dapatkah saya menambah logika akses yang ada tanpa menimpanya?
Sunting: Beberapa orang tampaknya fokus menjawab "bagaimana cara membatasi pengguna untuk membuat satu simpul dari jenis konten". Itu bukan pertanyaan di sini. Pertanyaannya adalah bagaimana cara menambahkan kondisi akses khusus ke item menu.
Menanggapi komentar di atas, solusi di D7 akan menggunakan:
sumber
Anda sedang mencari modul API Akses Menu Rantai .
Setidaknya ada satu contoh di Drupal Stack Exchange tentang cara menggunakannya.
sumber
Salah satu opsi adalah membuat peran baru yang telah membuat izin konten untuk jenis konten Anda. Setelah pengguna membuat simpul jenis itu, ambil peran itu dan mereka tidak akan bisa membuat lagi.
sumber
Mungkin Anda harus mencoba modul Batas Node .
Dari halaman proyek:
sumber