#Признаки проблемы и применимость
После входа в WordPress пользователь видит консоль, но не может открыть нужный пункт меню либо получает «Недостаточно прав». Причина обычно в наборе разрешений роли, правах конкретного сайта сети или проверке доступа сторонним дополнением; пароль здесь ни при чём.
#Причины и отличительные признаки
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| Роль не включает нужную возможностьРоль не включает нужную возможность. Автор не видит настройки сайта; редактор может работать с публикациями | Автор не видит настройки сайта; редактор может работать с публикациями | Сопоставить действия с перечнем capabilities |
| Сайт входит в сеть MultisiteСайт входит в сеть Multisite. Администратор сайта не видит управление плагинами на уровне сети | Администратор сайта не видит управление плагинами на уровне сети | Уточнить полномочия суперадминистратора |
| Доступ ограничен дополнениемДоступ ограничен дополнением. Пункт пропал после обновления плагина или установки менеджера ролей | Пункт пропал после обновления плагина или установки менеджера ролей | Изучить журнал и правила дополнения |
#Пошаговая диагностика и исправление
- Запишите точный недоступный разделВойдите под проблемным пользователем, откройте «Консоль» и запишите название исчезнувшего пункта или текст отказа и адрес страницы. Сравните с учётной записью штатного администратора. Не передавайте чужой пароль и не пробуйте открывать скрытые административные адреса в обход запрета.
- Проверьте роль штатным способомВойдите с разрешённой административной учётной записью → «Пользователи» → «Все пользователи» → откройте нужного человека. Посмотрите поле «Роль». Если поле недоступно, у вас, вероятно, нет прав изменять роли. Сохраните исходное значение в журнале изменений.
- Свяжите задачу с разрешениемДля редактора публикаций подходят права редактировать записи и страницы; для установки дополнений обычно требуется управление плагинами. В сети Multisite это может быть полномочием суперадминистратора. Не назначайте роль «Администратор» ради одной кнопки без согласования владельца.
- Исключите ограничение отдельного сайтаЕсли в верхней панели есть «Мои сайты», уточните, на каком сайте сети вы авторизованы. Откройте именно нужный сайт и сравните роль там. Добавление пользователя в сеть не всегда означает получение доступа ко всем сайтам.
- Проверьте дополнения управления ролямиВ разделе «Плагины» при наличии доступа найдите дополнения, изменяющие права. Посмотрите их правила для данного типа записей или меню. На тестовой копии временно отключите только предполагаемый конфликтующий модуль, повторите один запрос, затем верните состояние; не выключайте защиту на работающем сайте вслепую.
- Исправьте минимально необходимый доступАдминистратор на своём сайте может назначить штатную роль через карточку пользователя и сохранить. Для нестандартной возможности попросите разработчика изменить конкретную capability в настройках надёжного плагина ролей на тестовом окружении. Запишите, какое право изменено и кто его утвердил.
- Проверьте два сценария после исправленияПопросите пользователя войти повторно и открыть нужную страницу, выполнить допустимое действие и убедиться, что оно сохранилось. Отдельно проверьте, что пользователь не получил доступ к установке плагинов, пользователям или конфигурации, если такой доступ не согласовывался. При расширении полномочий больше требуемого немедленно верните прежнюю роль.
#Проверка результата
Нужный пункт доступен именно пользователю с подтверждёнными полномочиями, действие проходит без ошибки; остальные защищённые страницы остались недоступны.
#Что делать, если не помогло
Если роль соответствует задаче, а отказ остаётся, передайте разработчику название capability и сведения о плагине, который проверяет current_user_can(). Для Multisite привлеките суперадминистратора.