Saat menambahkan item menu dalam tampilan saya melihat tiga pilihan yang ambiguius
Entri menu normal
Tab menu
Tab menu default
Apa perbedaannya dan kapan saya akan menggunakan masing-masing?
Saat menambahkan item menu dalam tampilan saya melihat tiga pilihan yang ambiguius
Entri menu normal
Tab menu
Tab menu default
Apa perbedaannya dan kapan saya akan menggunakan masing-masing?
Jawaban:
Mereka sesuai dengan type
parameter item yang dikembalikanhook_menu()
Entri menu normal = MENU_NORMAL_ITEM
Jenis menu - Item menu "normal" yang ditampilkan di menu dan remah roti.
Item menu normal muncul di pohon menu dan dapat dipindahkan / disembunyikan oleh administrator. Gunakan ini untuk sebagian besar item menu. Ini adalah nilai default jika tidak ada jenis item menu yang ditentukan.
Jenis menu - Tugas khusus untuk item induk, biasanya ditampilkan sebagai tab. Tugas lokal adalah item menu yang menggambarkan tindakan yang harus dilakukan pada item induknya. Contohnya adalah jalur "simpul / 52 / edit", yang melakukan tugas "edit" pada "simpul / 52".
Tab menu default = MENU_DEFAULT_LOCAL_TASK
Jenis menu - Tugas lokal "default", yang awalnya aktif.
Setiap rangkaian tugas lokal harus menyediakan satu tugas "default", yang menghubungkan ke jalur yang sama dengan induknya ketika diklik.
Contoh terbaik yang bisa saya pikirkan adalah halaman simpul. Ketika Anda mengunjungi halaman node, tab 'View' disediakan oleh item menu bertipe MENU_DEFAULT_LOCAL_TASK
(lihat $items['node/%node/view']
di node_menu()
).
Itu tidak memiliki jalur seperti itu (itu mewarisi dari item menu induk), itu hanya bertujuan untuk memungkinkan halaman node memiliki tab di antara kelompok-kelompok tab 'nyata', yang didefinisikan dengan MENU_LOCAL_TASK
.
node/%node/mypath
dan memilih "tab Menu". "Tab menu Default" muncul ketika Anda menetapkan default untuk sekelompok tab, seperti pada contoh halaman node. node/[nid]/view
dan node/[nid]
atasi ke halaman yang sama - satu-satunya tujuan dari yang pertama adalah untuk memastikan tab terlihat ketika Anda mengunjungi yang terakhir. Adakah yang lebih jelas? Cukup sulit untuk dijelaskan