Я хотел бы проверить, имеет ли текущий пользователь BE доступ к определенному полю, например, pages.canonical_link или tt_content.header_link.
Я могу увидеть, как это можно сделать, проверив разрешения текущего пользователя на редактирование страницы или содержимого, например, с помощью $GLOBALS['BE_USER']->getPagePermsClause(Permission::CONTENT_EDIT)
.Также можно проверить, есть ли у пользователя доступ на запись в таблицу путем доступа через $GLOBALS['BE_USER']->groupData['tables_modify']
или к полю, проверив, является ли поле полем исключения, и проверив groupData['non_exclude_fields']
.
Но groupData является общедоступной, но внутренней (так что это генерирует предупреждения) и мне интересно, может быть, мне не хватает еще общедоступного API для этого.Кроме того, я не уверен, что мне не хватает некоторых вещей: существует множество способов настройки доступа, таких как редактирование блокировки страницы, вы можете ограничить доступ для редактирования полей для определенного языка и т. Д. И т. Д.