“Alanları Yönet” ve “Ekranı Yönet” sekmelerini gizleme


18

Drupal 7 ile bir web sitesi yapıyorum ve Taksonomi izinlerini araştırıyordum. Web sitesi sahiplerine kelime dağarcığını yönetmek ve terim eklemek, terimleri sıralamak vb. İçin merkezi bir yer vermek istedim. Bu yüzden görevlerine Taksonomi altındaki "Kelime ve terimleri yönet" izni verdim. Ancak bu istenmeyen bir komplikasyonla sonuçlandı, temel olarak onlara yeni alanlar oluşturma ve ekranlarını yönetme ("Alanları Yönetme" ve "Görüntüyü Yönetme" sekmeleri) erişimi sağladı.

"Yapı> Sınıflandırma" aracılığıyla erişilebilen ancak kelime düzenleme ekranındaki "Alanları Yönet" ve "Görüntüyü Yönet" sekmelerini devre dışı bırakan Kelime ve Terim düzenleme ekranına erişmelerini sağlamanın bir yolu var mı?

Drupal 6'da geçersiz kılma ve kancalar fikrine oldukça aşinayım, ancak Drupal 7'de oldukça yeniyim (aslında bu ilk D7 web sitem, yaklaşık 5 veya 6 D6 web sitesi yaptı) bu yüzden bazılarına aldırmıyorum varsa kodlama çözümleri. Sadece doğru yönde bir cevap ya da itme arıyorum.

Henüz kimse cevap vermediği için, taksonomileri (admin / yapı / taksonomi) yönetmek için merkezi alana alternatifler aramak istediğimi eklemek istedim. Belki sınıflandırmalar yönetici sayfasını taklit etmek için Views ile bir sayfa oluşturmayı düşünebilirim.

Bu uygulanabilir mi ve daha önce böyle bir şey yapan var mı?

Yanıtlar:


8

Bunun bir süre önce yanıtlandığını biliyorum, ancak herhangi bir özel veya özel modül gerektirmeyen bir çözüm var.

Çekirdek alanlar ui modülünü devre dışı bırakırsanız , Alanları Yönet ve Ekranı Yönet sekmeleri gösterilmez.

Bu bir üretim sitesiyse, alanları istediğiniz gibi yapılandırdığınız için bu iyi olacaktır. Herhangi bir değişiklik yapmanız gerekirse, modülü kısa bir süre için tekrar etkinleştirmeniz yeterlidir.


1
+1 Bu, sonuca ulaşmanın en temiz, en az hacimli ve hızlı yolu gibi görünüyor.
Beebee

Bu geçici bir çözüm değildir, "herhangi bir özel veya özel modül gerektirmez" ve şimdiye kadar oluşturulan her Drupal sitesinde iyi çalışan bir çözümdür.
marblegravy


3

İzin administer taxonomy , alan izinleri vermek için kullanılan şeydir, onlara bu izinleri vermeniz gerekiyorsa, sınıflandırma yönetimine erişmeleri için alan kullanıcı arabirimi için yeni bir izin oluşturabilirsiniz.

Bunu ayarlamanın en kolay yolu, hook_entity_info_alter kanca ile, çünkü alan kullanıcı arabirimi için yönetici yolunun ve erişim izninin eklendiği yer burasıdır. hook_menu_alterİzni değiştirmek için de kullanabilirsiniz , ancak bu biraz daha fazla iş.


2

Field_ui.module dosyasından field_ui_menu () işlevinde ayarlanan 'erişim geri aramasını' düzenlemek için hook_menu_alter () yöntemini kullanmayı deneyebilirsiniz. "Alanları Yönet" ve "Ekranları Yönet" menü öğelerinin ayarlandığı yer burasıdır.

Hook_menu_alter () öğenizde, sınıflandırma yolları için bu iki menü öğesi girişini arayabilir (bunların İçerik Türü sürümlerini saklamak isteyeceğinizden) ve 'erişim geri aramasını' oluşturduğunuz yeni bir izni kontrol eden özel bir yöntemle değiştirebilirsiniz hook_permission () içinde.

Ben geçmişte benzer bir şey yaptım ve gerekirse kod göndermek için mutlu olurdu.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.