Альтернатива User Role Editor: пять вопросов перед переходом
Тот, кто ищет альтернативу плагину управления правами, чаще всего не столкнулся с ошибкой, а заметил пробел: клиент видит пункты меню, которые его не касаются. Защищённая запись всё-таки где-то видна. Или уже невозможно сказать, кто, когда и какое право получил. Пять вопросов помогают в этом разобраться.
Вопрос 1: держится ли правило и без админки?
Это самый важный вопрос, и ответить на него ты можешь сам за минуту. Защити запись так, чтобы её видела только определённая роль. Выйди из системы. Открой /wp-json/wp/v2/posts?search= со словом из этой записи.
Если содержимое есть в ответе, твоё правило меняет только отображение. REST API WordPress по умолчанию доступен, и он обращается к другим местам в коде, чем список записей в админке. Kakapo Roles явно обеспечивает соблюдение правила видимости и там — именно поэтому эта проверка является самым быстрым способом оценить плагин управления правами.
Проведи эту проверку и с плагином, которым пользуешься сейчас, прежде чем переходить. Иногда пробел находится в другом месте — например, в конструкторе страниц, который отдаёт контент через собственный эндпоинт.
Вопрос 2: может ли кто-то выдать себе больше прав?
Плагин управления правами, который позволяет любому, у кого есть доступ к интерфейсу, повысить собственную роль, сводит на нет своё назначение. В WordPress для этого есть хук — get_editable_roles(), — который определяет, какие роли человек вообще может редактировать. Вопрос к альтернативе: учитывается ли он везде?
В режиме сети добавляется вторая граница: роли там частично действуют на уровне всей сети. Кто перезаписывает их с одного из сайтов сети, меняет их для всех сайтов сети — в том числе для тех, что ему не принадлежат.
Вопрос 3: можно ли навести порядок в админке?
Права определяют, что человеку РАЗРЕШЕНО. Для клиента не менее важно, что он ВИДИТ. У редактора, перед которым двенадцать пунктов меню, десять из которых заблокированы, не безопасная, а запутанная админка.
Поэтому проверь, выходит ли альтернатива за рамки ролей и прав: админ-меню по ролям, ограничение медиатеки собственными файлами, виджеты и меню навигации, разрешённые шорткоды, перенаправление после входа. В Kakapo Roles всё это встроено — у многих плагинов такого рода это отдельные расширения или фрагменты кода.
Вопрос 4: можно ли посмотреть, что было изменено?
Права меняют редко и чаще всего в спешке. Через полгода встаёт вопрос, почему роли что-то разрешено. Без журнала ответ — лишь предположение.
Вопрос к альтернативе: есть ли журнал изменений и указано ли в нём, КТО, КОГДА и КАКОЕ право получил или потерял? Kakapo Roles ведёт такой журнал и записывает в него также изменения, проходящие через назначение и перенос.
Вопрос 5: придётся ли строить всё заново на каждом сайте?
Кто обслуживает несколько установок, строит одну и ту же структуру прав несколько раз — и каждый раз немного отклоняется от прежней. Через год пять сайтов — это пять особых случаев. Поэтому проверь, можно ли структуру экспортировать и импортировать и что при импорте происходит с существующими ролями: дополнение или замена?
Kakapo Roles умеет и то и другое и перед импортом сообщает, какой из двух путей выбран. «Замена» (по-немецки: „Ersetzen“) — более опасный путь, поэтому его нужно явно подтвердить.
Чек-лист вкратце
| Критерий | Почему это важно | В Kakapo Roles |
|---|---|---|
| Действие в REST API | Иначе правило защищает только отображение | явно обеспечивается |
| Защита от расширения прав | Иначе плагин сам себя обесценивает | get_editable_roles учитывается, в том числе в сети |
| Порядок в админке | Клиент должен видеть то, что его касается | Админ-меню, медиатека, виджеты, меню навигации, шорткоды |
| Перенаправление после входа по ролям | Клиент попадает туда, где работает | встроено |
| Корзина для ролей | Роли редко удаляют с холодной головой | с восстановлением |
| Журнал изменений | Через полгода важно подтверждение | кто, когда, какое право |
| Перенос на другие сайты | Иначе каждый сайт становится особым случаем | Экспорт и импорт, дополнение или замена |
| Несколько сайтов по одной лицензии | Один счёт вместо пяти | девять плагинов, один логин |
Что стоит сделать перед переходом
- Зафиксируй текущее состояние — какие собственные роли существуют и какие права к ним привязаны.
- Создай резервную копию. Права хранятся в базе данных, одна ошибка затрагивает всех пользователей сразу.
- Воссоздай структуру в новом плагине и сравни её строка за строкой.
- Войди под тестовым пользователем каждой роли и посмотри, что он действительно видит.
- Проведи REST-тест из вопроса 1.
- Отключи старый плагин, а не удаляй его — на две недели.
Два плагина управления правами одновременно записывают в одни и те же роли, и побеждает тот, кто сохранил последним. В переходный период вноси изменения только в одном из двух.
Часто задаваемые вопросы
Пропадут ли мои роли при переходе?
Можно ли запустить оба параллельно?
Нужно ли это вообще, если у меня всего два редактора?
Влияет ли это на время загрузки?
Что происходит без действующей лицензии?
Kakapo Roles — заплатите один раз, пользуйтесь всегда.
Все девять плагинов за 149 € один раз вместо 13 € в месяц. Безопасная оплата через Stripe. Первые 14 дней: проблема решена или деньги назад.
Получить Lifetime Все функции