Роли и привилегии WordPress

Хотя WordPress начинался как платформа для ведения блогов, он уже давно превратился в полнофункциональную систему управления контентом.

Частью того, что делает Вордпресс полнофункциональной CMS, является система ролей и привилегий, которая определяет, что зарегистрированные пользователи могут делать на вашем сайте.

Если у вас на сайте есть регистрация пользователей, например, несколько авторов, которые создают для вас контент, или мембершип-сайт, вам нужно понимать роли и привилегии, которые они имеют.

Содержание:

Что такое роли и привилегии
Как использовать роли и привилегии
Стандартные роли и привилегии Вордпресс
Роли и привилегии плагинов
Как создать собственные роли и привилегии

Как проверить созданные роли
Примеры использования ролей и привилегий
Заключение

Что такое роли и привилегии

Чтобы понять, что это такое, лучше начать с привилегий.

Привилегии — это отдельные действия / разрешения на сайте. Это что-то, что пользователь может «делать» или «видеть».

Примеры привилегий:

  • Установить плагин
  • Создать новую страницу
  • Опубликовать страницу
  • Редактировать чью-то страницу
  • Заменить тему Вордпресс
  • Просматривать личные страницы

Каждое действие / разрешение — это уникальная возможность. Кроме этих действий / разрешений / возможностей существуют десятки других, которые связаны с вашим сайтом или плагинами и темами.

Роль — это набор возможностей, которые можно назначить пользователю. Каждой учетной записи пользователя назначена роль, которая определяет, какие возможности есть у каждого пользователя.

Например, одна роль может предоставлять пользователю пятнадцать разных возможностей, а другая предоставляет только две или три.

Вы можете редактировать роль пользователя в разделе Пользователи меню Вордпресс:

Роли Вордпресс
Роли Вордпресс

Вы можете выбрать роль по умолчанию для новых пользователей в Настройках Общие.

Как использовать роли и привилегии

Предположим, на вашем сайте есть автор, который пишет статьи.

Вы хотите, чтобы этот пользователь мог создавать новый контент в админке Вордпресс, чтобы этого не пришлось делать вам.

Но в то же время вы не хотите, чтобы этот пользователь мог устанавливать плагины или менять тему. Даже если вы доверяете этому человеку, вы все равно не хотите, чтобы он мог что-то менять, потому что он может случайно что-то сломать.

Роли и привилегии позволяют дать этому человеку только те разрешения, которые необходимы ему для выполнения своей части работы.

Это не только позволяет избежать случайных ошибок на сайте, но и усиливает безопасность сайта, применяя технику защиты, которая называется принцип наименьших привилегий.

Суть этой техники в том, чтобы предоставлять всем пользователям сайта только тот необходимый минимум привилегий, который им нужен для взаимодействия с сайтом.

Стандартные роли и привилегии Вордпресс

По умолчанию, одиночная установка Вордпресс имеет 5 ролей, каждая со своими привилегиями для стандартных действий и разрешений Вордпресс:

  • Администратор (Administrator) — Роль по умолчанию, назначается, когда вы устанавливаете Вордпресс. У администратора есть все привилегии, включая установку тем и плагинов.
  • Редактор (Editor) — Может редактировать и публиковать Записи / Страницы, но не может работать с темами, плагинами, и так далее.
  • Автор (Author) — Может создавать, редактировать и публиковать свои собственные Записи, но не может редактировать контент, созданный другими пользователями.
  • Участник (Contributor) — Может создавать свой собственный контент, но не может публиковать его и не может загружать медиа файлы.
  • Подписчик (Subscriber) — Может редактировать данные своего профиля, больше ничего делать не может. По умолчанию это роль для новых пользователей, но вы можете ее изменить.

Вы можете посмотреть все стандартные возможности, а также узнать, какие привилегии доступны для каждой роли в таблице «Возможности и роли» на WordPress.org.

Если вы используете Мультисайт, то Вордпресс добавляет шестую роль по умолчанию – Супер-администратор.

Супер-администраторы получают новые возможности для доступа ко всем сетевым настройкам и редактированию отдельных сайтов сети.

Плагины добавляют свои роли и привилегии

В зависимости от плагинов, которые вы используете, у вас могут появиться дополнительные действия, которые могут совершать пользователи.

Например, если вы используете WooCommerce для создания интернет-магазина, у вас появится много новых разрешений, которые нужны для работы вашего магазина.

Чтобы это работало, плагины добавляют свои собственные роли и / или возможности.

Например, WooCommerce создает 2 новые роли пользователей:

  • Менеджер магазина (Shop manager) — Эта роль позволяет управлять магазином без необходимости давать пользователю роль Администратора.
  • Клиент (Customer) — Это роль по умолчанию для покупателя. Эти пользователи могут редактировать свои предыдущие / текущие заказы, и редактировать свой профиль.

Также WooCommerce добавляет новые разрешения для редактирование настроек WooCommerce и просмотра отчетов.

Многие другие плагины добавляют свои возможности. Например, некоторые плагины событий добавляют новые разрешения для создания и редактирования событий.

Кроме этого, вы тоже можете создавать свои собственные роли и назначать им привилегии.

Как создать собственные роли и привилегии

Хотя стандартные роли Вордпресс очень полезны, вам может быть нужно создать свои собственные роли, которые требуются для вашего сайта.

Например, некоторым владельцам сайтов нравится роль Участник, потому что она не позволяет пользователям публиковать новый контент.

Но в то же время Участник не может загружать медиа файлы, что может быть слишком сильным ограничением.

Вы можете дать Участнику привилегию upload_files (Загружать файлы)

Или вы можете создать собственную роль, которая будет похожа на роль Участник, но которой разрешено загружать медиа файлы.

Вы можете создавать собственные роли и назначать привилегии вручную или с помощью плагинов.

Как создать роль пользователя с помощью плагина

Для работы с ролями Вордпресс существует несколько плагинов, в этом примере я буду использовать плагин User Role Editor:

У плагина есть визуальный интерфейс, в котором вы можете редактировать привилегии существующих ролей, и / или создавать собственные роли и назначать им нужные возможности.

После того, как вы установили и активировали плагин, перейдите в ПользователиРедактор ролей.

Там вы увидите список возможностей и фильтры, которые помогут вам найти нужные привилегии.

Чтобы добавить или удалить привилегию для выбранной роли, вам нужно установить или снять флажок.

Чтобы выбрать роль пользователя, с которой вы хотите работать, выберите ее в выпадающем списке вверху.

Если вы хотите создать собственную роль пользователя, нажмите кнопку Создать роль справа:

User Role Editor - Интерфейс плагина
User Role Editor

Еще одна полезная вещь, которую позволяет сделать плагин User Role Editor, — это назначить несколько ролей одному пользователю, и / или назначить определенные привилегии конкретному пользователю (вместо того, чтобы предоставлять их через роль).

Вы можете это сделать в профиле пользователя:

User Role Editor - Настройки в профиле пользователя
Настройки в профиле пользователя

Как создать роль пользователя вручную

Если вы не хотите устанавливать плагин, то же самое вы можете сделать вручную.

Добавьте этот снипет в functions.php дочерней темы, или с помощью специального плагина.

Не добавляйте снипет напрямую в functions.php текущей темы, потому что при следующем обновлении темы этот файл будет заменен на оригинальный:

Этот снипет создаст новую роль на сайте, которая будет называться New Role. Если вы хотите дать роли другое название, измените названия в строках 2 и 3, учитывая регистр.

Чтобы добавить нужные привилегии, добавляйте их в массив array.

true — разрешает эту привилегию, false — запрещает эту привилегию.

Полный список всех стандартных привилегий Вордпресс находится здесь.

Если вы хотите узнать, какие привилегии даны вашим плагинам, вы можете найти эту информацию в документации плагина.

Как проверить созданные роли

После того, как вы создали собственные роли одним из способов выше, проверьте, что они работают как задумывалось.

Самый простой способ это сделать — создать несколько аккаунтов с разными ролями пользователей и войти в каждую учетную запись, чтобы посмотреть, что может делать каждая учетная запись.

Чтобы сэкономить время, вы можете использовать плагин User Switching, который позволяет переключаться между учетными записями пользователей из админки Вордпресс без необходимости постоянно входить и выходить.

Примеры использования ролей и привилегий

Предположим, над вашим сайтом работает команда из нескольких человек:

  • Разработчик, которому нужен полный доступ для работы с плагинами и темой
  • Помощник, который создает контент
  • Менеджер, которому нужно утверждать контент перед публикацией

Разработчику вы можете дать роль Администратора, и, возможно, отключить какие-то привилегии, например, install_themes (Устанавливать темы).

Помощнику вы можете дать роль Автора. По умолчанию привилегии Автора позволяют ему публиковать контент, но вы хотите, чтобы Менеджер проверял контент перед публикацией.

Тогда вы можете либо создать новую роль с соответствующими привилегиями, либо убрать привилегии edit_published_posts (Редактировать опубликованные посты) и publish_posts (Публиковать посты).

Менеджеру нужно проверять и публиковать контент, вы можете дать ему роль Редактора без необходимости давать полный доступ, как у Администратора.


Еще один пример — вам может быть нужно создать несколько одинаковых ролей для мембершип сайта, которым дана только одна привилегия read (Читать).

Разным ролям вы можете разрешить доступ к разному контенту, например, Platinum Membership, Gold Membership и Silver Membership.

Заключение

Вордпресс по умолчанию имеет свою собственную системой ролей и привилегий, и многие плагины добавляют свои собственные роли и привилегии.

Роли и возможности Вордпресс определяют, какие действия каждый пользователь может совершать на вашем сайте.

Если вы разрешаете регистрацию на сайте, вам нужно знать, какие возможности есть у каждой роли, чтобы каждый пользователь мог выполнять только необходимые ему действия, но не более того.

Вы можете создавать свои собственные роли и давать им необходимые привилегии с помощью плагина или вручную с помощью кода.

Читайте также:

  1. Как изменить роль пользователя после покупки WooCommerce
  2. Как сделать мембершип на WordPress бесплатно
  3. 20+ Лучших мембершип плагинов для WordPress

Оставляйте комментарии.

Ответить

Techbear