В WordPress заложены разграничения прав пользователей. Благодаря этому открываются хорошие возможности для создания множества полезных штук в блоге, используя те права, которые имеют пользователи разных уровней. Например, можно какие-то кнопки показывать только пользователям с уровнем не ниже автора, можно что-то показывать только администраторам. Сделать это возможно, если знать, что могут делать пользователи с определенными правами, а что не могут.
Для начала давайте посмотрим, какие бывают пользователи в WordPress:
- Subscriber – Подписчик. Самый простой зарегистрированный пользователь. Обладает минимальными правами – может только просматривать информацию. Единственное, что он может изменить – это некоторые данные в своем профиле.
- Contributor – Участник. Он может изменять свой профиль и публиковать простые посты.
- Author – Автор. Он может публиковать посты, создавать теги и категории, добавлять в блог изображения, редактировать свои посты и комментарии в последующем. Так же может одобрять комментарии к своим постам, отправлять комментарии в спам.
- Editor – Редактор. Он может управлять авторами и участниками, соответственно редактировать все посты и комментарии, создавать страницы.
- Administrator – Администратор. Может все.
- Super Admin – Супер-администратор. Пользователь, актуальный для мультиблогов. Может все, вплоть до управления деятельностью администраторов отдельных блогов в мультитблоговой структуре.
Как видите, у каждого вида пользователей есть определенные права, обеспечивающие их возможностями в рамках той роли, которая для них отведена. То есть каждый из пользователей может совершать только определенные действия, у каждого из них есть свой потолок в возможностях. Наглядно показывает, какой вид пользователя что может делать в блоге, таблица из Кодекеса:
| Возможности | Super Admin | Administrator | Editor | Author | Contributor | Subscriber |
|---|---|---|---|---|---|---|
| manage_network | ||||||
| manage_sites | ||||||
| manage_network_users | ||||||
| manage_network_themes | ||||||
| manage_network_options | ||||||
| activate_plugins | ||||||
| add_users | ||||||
| create_users | ||||||
| delete_plugins | ||||||
| delete_themes | ||||||
| delete_users | ||||||
| edit_files | ||||||
| edit_plugins | ||||||
| edit_theme_options | ||||||
| edit_themes | ||||||
| edit_users | ||||||
| export | ||||||
| import | ||||||
| install_plugins | ||||||
| install_themes | ||||||
| list_users | ||||||
| manage_options | ||||||
| promote_users | ||||||
| remove_users | ||||||
| switch_themes | ||||||
| unfiltered_upload | ||||||
| update_core | ||||||
| update_plugins | ||||||
| update_themes | ||||||
| edit_dashboard | ||||||
| moderate_comments | ||||||
| manage_categories | ||||||
| manage_links | ||||||
| unfiltered_html | ||||||
| edit_others_posts | ||||||
| edit_pages | ||||||
| edit_others_pages | ||||||
| edit_published_pages | ||||||
| publish_pages | ||||||
| delete_pages | ||||||
| delete_others_pages | ||||||
| delete_published_pages | ||||||
| delete_others_posts | ||||||
| delete_private_posts | ||||||
| edit_private_posts | ||||||
| read_private_posts | ||||||
| delete_private_pages | ||||||
| edit_private_pages | ||||||
| read_private_pages | ||||||
| edit_published_posts | ||||||
| upload_files | ||||||
| publish_posts | ||||||
| delete_published_posts | ||||||
| edit_posts | ||||||
| delete_posts | ||||||
| read |
По ней легко определить, кто может только читать (read – Subscriber), а кто, например, управлять категориями (manage_categories – Editor).
Нетрудно заметить, что публиковать страницы, управлять категориями и ссылками могут все авторы. А что если авторов или администраторов тоже разделить наопределденные группы, одним позволив управлять категориями, а другим только лишь публиковать посты? В зависимости от того, что может делать пользователь, введено понятие уровня пользователя – да, в WordPress тоже есть свои эльфы шестого уровня.
| Возможности | Administrator | Editor | Author | Contributor | Subscriber |
|---|---|---|---|---|---|
| level_10 | |||||
| level_9 | |||||
| level_8 | |||||
| level_7 | |||||
| level_6 | |||||
| level_5 | |||||
| level_4 | |||||
| level_3 | |||||
| level_2 | |||||
| level_1 | |||||
| level_0 |
Соответствие между уровнями и ролями
- User Level 0 соответвует роли Subscriber
- User Level 1 соответвует роли Contributor
- User Level 2 соответвует роли Author
- User Level 3 соответвует роли Author
- User Level 4 соответвует роли Author
- User Level 5 соответвует роли Editor
- User Level 6 соответвует роли Editor
- User Level 7 соответвует роли Editor
- User Level 8 соответвует роли Administrator
- User Level 9 соответвует роли Administrator
- User Level 10 соответвует роли Administrator
Как видите, авторы тоже могут быть начального уровня (User Level 2) и прокачанные (User Level 4). Чем выше уровень – тем больше у пользователя прав и возможностей. Наглядно возможности пользователей разного уровня показывает таблица из Кодекса:
| Возможности пользователей разного уровня | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||
| Уровни пользователей: | |||||||||||
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | |
| Консоль | |||||||||||
| —– | x | x | x | x | x | x | x | x | x | x | x |
| Записи | |||||||||||
| —–Создать пост | – | x | x | x | x | x | x | x | x | x | |
| —–Создать страницу | x | x | x | x | x | x | |||||
| Управление | |||||||||||
| —–Посты | – | + | + | + | + | + | + | + | + | x | |
| —–Страницы | + | + | + | + | + | x | |||||
| —–Категории | – | – | – | x | x | x | x | x | x | x | |
| —–Комментарии | x | x | x | x | x | x | x | x | x | x | |
| —–Одижают проверки | – | – | – | x | x | x | x | x | x | x | |
| Ссылки | |||||||||||
| —–Управление ссылками | + | + | + | + | + | x | |||||
| —–Добавление ссылок | x | x | x | x | x | x | |||||
| —–Категории ссылок | x | x | x | x | x | x | |||||
| —–Импорт ссылок | x | x | x | x | x | x | |||||
| Оформление | |||||||||||
| —–Темы | x | x | x | ||||||||
| —–Редактор тем | x | x | x | ||||||||
| Плагины | |||||||||||
| —–Плагины | x | x | x | ||||||||
| —–Редактор плагинов | x | x | x | ||||||||
| Пользователи | |||||||||||
| —–Ваш профиль | x | x | x | x | x | x | x | x | x | x | x |
| —–Авторы и пользователи | – | + | + | + | + | x | |||||
| Параметры | |||||||||||
| —–Основные | x | x | x | x | x | ||||||
| —–Написание | x | x | x | x | x | ||||||
| —–Чтение | x | x | x | x | x | ||||||
| —–Обсуждение | x | x | x | x | x | ||||||
| —–Постоянные ссылки | x | x | x | x | x | ||||||
| —–Другие настройки | x | x | x | x | x | ||||||
| Загрузка | |||||||||||
| —–(только если разрешено) | x | x | x | x | x | x | x | x | x | x | |
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | |
Что мы имеем в итоге от такого разделения? Ответ напрашивается сам – манипулируя ролями пользователей и их уровнями, мы может создавать в блоге структуры, доступные только пользователям с определенными правами. Очень простой пример: в блоге n-wp.ru комментарировать могут пользователи с правами от подписчика до администратора, а вот публиковать посты могут только пользователи с правами не ниже участника.









Очень хотелось бы знать, есть ли возможность как-то ограничить доступ к публикациям в определенные рубрики. Т.е. чтобы Автор мог публиковать только в РУбрика 1 ??
Кто может дать ответ?
Я присоединяюсь к вопросу smedvedev. Очень актуальная тема!!!
До сих пор на одном из блогов стоит Author2Categories, с помощью него получается скрыть определенные рубрики.
Как он себя покажет с новыми версиями, сказать не могу.
Благодарю, нужно опробовать, надеюсь потянет на новых версиях )
Как управлять над ролями, пользовательскими постами!