Веб-сайты, основанные на платформе WordPress, позволяют создавать многоуровневую систему учетных записей пользователей с различными ролями и правами доступа. Роли пользователей предоставляют определенные разрешения, которые определяют, какие действия могут выполнять пользователи в административной части сайта; В этой статье мы рассмотрим основные роли пользователей в WordPress и их возможности.
- Администратор (Admin)
- Редактор (Editor)
- Автор (Author)
- Пользователь (Contributor)
- Зритель (Subscriber)
- Роли пользователей WordPress и их права
- Учащиеся, учителя и домашние задания
- Регистрация ролей и прав пользователей WordPress
- Регистрация пользовательского типа записи и связанной с ним таксономии
- Набор прав для типа записи проекта учащегося
- Добавление прав для учителей и учащихся
- Очистка базы данных при деактивации плагина
- Управление ролями и правами пользователей WordPress с помощью плагинов
- Заключение
Администратор (Admin)
Роль администратора является самой высокой ролью в WordPress. Пользователь с этой ролью имеет полный контроль над сайтом. Администратор может управлять всеми аспектами сайта, включая установку и настройку плагинов и тем, создание и удаление пользователей, публикацию и редактирование записей и т. д. Роль администратора должна быть назначена только надежным пользователям, так как они имеют доступ ко всем аспектам сайта и могут внести существенные изменения.
Редактор (Editor)
Редакторы имеют широкий доступ к контенту на сайте и могут управлять записями, страницами, медиафайлами и комментариями. Они также могут создавать, редактировать и удалять записи, опубликованные другими пользователями. Редакторы не могут изменять настройки сайта или управлять пользователями, за исключением редактирования своего профиля.
Автор (Author)
Авторы могут создавать, редактировать и удалять только свои собственные записи. У них нет доступа к записям, созданным другими пользователями, и они не могут изменять настройки сайта или управлять пользователями. Эта роль наиболее подходит для пользователей, которых вы хотите предоставить контентный доступ без возможности изменения других аспектов сайта.
Пользователь (Contributor)
Роль пользователя (Contributor) позволяет создавать и редактировать собственные записи, но они не могут опубликовывать их самостоятельно. Вместо этого записи, созданные пользователями с этой ролью, должны быть отправлены на рассмотрение администратору или редактору для публикации. Пользователи с ролью «Пользователь» не могут изменять настройки сайта или управлять другими пользователями.
Зритель (Subscriber)
Роль зрителя (Subscriber) предоставляет самые ограниченные права. Зрители могут только просматривать контент сайта и оставлять комментарии (если эта функция разрешена). Они не могут создавать, редактировать или удалять записи, их комментарии проходят модерацию перед публикацией. Роль зрителя обычно используется для пользователей, которые зарегистрировались на сайте для получения уведомлений о новых записях и комментариях.
Каждая из этих ролей имеет свое место и свои права доступа на сайте WordPress. Вы можете назначить роли пользователям, редактировать их права и обеспечить безопасность и эффективность работы вашего сайта.
Каждый раз, когда для сайта вводится новый профиль, WordPress добавляет данные в таблицы wp_users и wp_usermeta. Новому пользователю присваивается роль, которая определяет действия, доступные в таблицах администрирования. Но что именно представляют собой роли WordPress?
Роли пользователей WordPress и их права
Система управления пользователями WordPress основана на двух основных концепциях: роли и права.
- Роли определяют группы пользователей, которые уполномочены выполнять определенные задачи на сайте.
- Права — это разрешения на выполнение отдельных задач, доступные для конкретной роли.
По умолчанию WordPress предлагает шесть ролей
- SuperAdministrator — пользователь с полным доступом к административным функциям установки WordPress с большим количеством локаций. Может устанавливать и удалять дочерние местоположения, пользователей, проблемы и добавки.
- Администратор — пользователь с полным доступом ко всем обычным функциям контроля версий WordPress.
- Автор — может редактировать и публиковать контент, созданный любым пользователем.
- Автор — может публиковать и обрабатывать свой собственный контент.
- Партнер — может создавать и обрабатывать свой собственный контент, но не может публиковать свой собственный контент.
- Подписчик — может получить доступ только к своему профилю.
Роли пользователей WordPress расположены иерархически. Рассмотрим следующую таблицу
Абонент | Член | Издатель |
Читать. | Читать | Читать |
— | edit_posts | edit_posts |
— | delete_posts | delete_posts |
— | — | delete_pubrated_posts |
— | — | публиковать_посты |
— | — | upload_files |
— | — | edit_pubrated_posts |
Участники имеют такой же доступ на чтение, как и подписчики. Однако пользователи могут создавать, редактировать и удалять свои личные сообщения.
Авторы имеют те же права, что и члены. Кроме того, они могут публиковать, обрабатывать и удалять записи, а также загружать мультимедийные файлы.
Существует два вида прав.
- Post -Citizens — функциональность пользователя текущей страницы.
- Основные права — основные права пользователя (в машине).
Пользователь может редактировать публикацию, если он является автором этой публикации (сразу после 'edit_post'). Лицензия на редактирование записей, созданных другими пользователями (Примитивное право 'edit_others_posts').
Полный список всех встроенных в роль прав доступен в коде.
WordPress позволяет создавать новые права и роли. Например, вы можете разрешить подписчикам создавать и редактировать сообщения. Однако вы можете использовать гораздо больше, чем просто систему управления пользователями.
- Показывать/скрывать данные интерфейса (пункты меню, посты или виджеты) в соответствии с ролями пользователей.
- Настройте содержание записей в соответствии с ролями пользователей.
- Ограничивать доступ к определенным частям сайта для некоторых пользователей или ролей.
- Создавайте регистрации пользовательского типа с индивидуальными правами, которые могут обрабатываться по-разному для каждой роли.
Последний пункт определяет цель данной статьи.
Учащиеся, учителя и домашние задания
Предположим, вы разрабатываете образовательный сайт, на котором ученики и учителя смогут взаимодействовать друг с другом. Студенты должны создать проект и представить его на оценку. Учителя могут редактировать и публиковать проекты. Студенты могут комментировать любой проект, но комментарии учитываются.
Что нужно применять:.
- Добавьте роли ученика и учителя.
- Введите тип регистрации Student_Project и пользовательскую регистрацию
- Ввод и отображение определенных прав для типов регистрации
- Назначение прав для ролей администратора, студента и преподавателя
Для этого добавьте тип регистрации и таксономию пользователей, а также запишите их роли и права — на. Полный код плагина доступен на GIST.
Регистрация ролей и прав пользователей WordPress
Студенты могут читать все проекты, а также создавать, обрабатывать и удалять собственные проекты. Они не могут публиковать проекты, обрабатывать или удалять поданные заявки.
Преподаватели должны контролировать все аспекты управления проектом. Они могут создавать новые проекты, обрабатывать, удалять и публиковать проекты, созданные пользователями.
Назначение ролей студентов новым пользователям в таблице Добавить пользователя
Сначала зарегистрируйте роли ученика и учителя.
- Register_Activation_hook- ADD -ON записывает функцию, которая была активирована, когда она была активирована. Предпочтительнее использовать крючки действий, такие как init. Это происходит потому, что новая роль записывается в базу данных, и функцию не нужно выполнять каждый раз при загрузке WordPress. Register_activation_hook содержит два аргумента: путь к основному файлу дополнения (__File__) и функцию выполнения Re ('kinsta_add_roles').
- Когда ADD -ON активирован, выполняется Register_Activation_Hook, записывая новую роль в таблицу WP_OPTIONS, если ADD_ROLE еще не присутствует. Эта функция принимает три аргумента. Имя роли, имя часа и права Права.
Функция Re -Reinforcement добавляет две роли. Каждая роль имеет свой собственный набор прав.
Меню Роли в таблице управления пользователями.
Это позволяет создавать сообщества студентов и преподавателей. Однако все их права не так уж сильно отличаются от прав авторов и издателей. Зарегистрируйте на своем сайте пользовательские типы отстранений для учеников, учителей и менеджеров.
Регистрация пользовательского типа записи и связанной с ним таксономии
Следующий код записывает тип регистрации sustent_project.
Чтобы ввести новый тип регистрации, необходимо вызвать функцию register_post_type в хуке init.
Register_Post_Type принимает два аргумента: настраиваемый тип регистрации ('Student_Project') slug и метку управления конфигурацией и регистрации в таблице аргументов. Затем он регистрирует ненаследуемую регистрацию, идентифицирующую проект.
Register_Taxonomy принимает три аргумента: Taxon Slug ('Sabuct'), регистрацию соответствующего типа ('Student_Project') и метку хранения лимитов и другие параметры (подробнее см. код). Register_Taxonomy должна быть связана с энергетической инициацией.
Набор прав для типа записи проекта учащегося
Чтобы добавить новый тип регистрационного права, добавьте один или два из следующих Register_Post_Type.
capability_type: (string | array) — строка ("student_project"), используемая в качестве основы для создания прав на чтение, обработку и удаление. Создаются следующие права.
Примитивные права, определенные в функции MAP_META_CAP:.
Тип_возможности обеспечивает общую проверку прав на регистрацию. Если требуется более гибкий контроль, можно использовать аргумент capability.
capability: (массив) — таблица прав для данного типа регистрации. Если этот аргумент выбран вместо capability_type, он может быть передан в register_post_type следующим образом
map_meta_cap: (boolean) — автоматически преобразует постулаты типа регистрации в одно или несколько первичных прав. В этом примере аргумент функции должен быть установлен в TRUE при использовании.
Теперь вы можете вернуться к функции Register_Post_Type и установить новую таблицу ограничений.
Права можно найти в файле /wp-inteludes/post.php и в ссылке на функцию register_post_type.
Добавление прав для учителей и учащихся
Здесь права должны быть назначены ролям пользователей.
Функция re-function связана с энергией admin_init, которая запускается раньше других хуков при загрузке панели администратора. Метод объекта wp_role add_cap назначает указанные права роли.
Окно студенческого проекта
Очистка базы данных при деактивации плагина
Вы также можете удалить роли студентов, преподавателей и права типа адаптации регистрации роли менеджера, когда ADD -ON выключен.
ADD -ON завершен. Полный код примера доступен здесь.
Проектный стол для учителей
Управление ролями и правами пользователей WordPress с помощью плагинов
Их роли и права также могут управляться с помощью следующих добавок
Member — удобный обработчик ролей и прав. Администраторы сайта могут добавлять, обрабатывать и удалять роли и права, а также запрещать определенные действия. Они также контролируют, какие роли имеют доступ к содержимому публикации. Он предоставляет шорткоды, виджеты и т.д.
Добавить -он Добавить новую роль с помощью члена Страница
Обработчик ролей пользователей — ADD -ON позволяет администраторам назначать роли отдельным пользователям и назначать роли для многосайтовых установок.
WPFRONT User Role Editor — еще одно дополнение для управления ролями и правами пользователей WordPress.
Ротация пользователей — администраторы сайта могут чередовать учетные записи пользователей одним щелчком мыши.
Заключение
На первый взгляд, система ролей и прав пользователей WordPress может показаться немного запутанной. Однако, как только вы поймете его основной смысл, вы сможете легко контролировать действия пользователя.