Я делаю сайт с Drupal 7, и я просматривал разрешения для таксономий. Я хотел предоставить владельцам веб-сайтов центральное место для управления словарями и добавления терминов, сортировки терминов и т. Д. Поэтому я дал им разрешение «Управление словарями и терминами» в рамках таксономии. Однако это привело к нежелательному усложнению, в основном это дало им доступ к созданию новых полей и управлению их отображением (вкладки «Управление полями» и «Управление отображением»).
Есть ли способ предоставить им доступ к экрану редактирования словаря и термина, к которому можно получить доступ через «Структура> Таксономия», но при этом отключить вкладки «Управление полями» и «Управление отображением» на экране редактирования словаря?
Я довольно знаком с понятием переопределения и перехватов в Drupal 6, но я довольно новичок в Drupal 7 (на самом деле это мой первый сайт D7, созданный с 5 или 6 сайтами D6), поэтому я не возражаю против некоторых решения для этого, если таковые имеются. Просто ищу ответ или толчок в правильном направлении.
Поскольку никто еще не ответил, я хотел бы добавить, что я готов рассмотреть альтернативы центральной области для управления таксономиями (администратор / структура / таксономия). Может быть, я мог бы посмотреть на создание страницы с представлениями для имитации страницы администратора таксономии.
Возможно ли это, и кто-нибудь делал что-то подобное раньше?
источник
Используйте модуль field_ui_permissions, который контролирует, должны ли отображаться вкладки «Управление полями» и «Управление отображением» или нет, основываясь на разрешениях ролей.
источник
Это разрешение
administer taxonomy
используется для предоставления полевых разрешений. Если вам нужно дать им это разрешение, чтобы предоставить им доступ к администрированию таксономии, вы можете создать новое разрешение для пользовательского интерфейса поля.Самый простой способ установить это с помощью
hook_entity_info_alter
ловушки, поскольку именно здесь добавляется путь администратора для поля пользовательского интерфейса и права доступа для них. Вы также можете использовать,hook_menu_alter
чтобы изменить разрешение, но это немного больше работы.источник
Вы можете попробовать использовать hook_menu_alter () для редактирования 'обратного вызова доступа', который настроен в функции field_ui_menu () из файла field_ui.module. Именно здесь настраиваются пункты меню «Управление полями» и «Управление дисплеями».
В вашем hook_menu_alter () вы можете найти эти две записи пункта меню для путей таксономии (поскольку вы хотите сохранить их версии контента) и изменить «обратный вызов доступа» на пользовательский метод, который проверяет новое разрешение, которое вы создаете. в hook_permission ().
Я делал нечто подобное в прошлом и был бы рад выслать код, если это необходимо.
источник