При написании плагинов WordPress часто возникает необходимость настроить параметры, для которых роли на сайте имеют доступ к определенным функциям или контенту. Для этого плагину dev необходимо получить список ролей, существующих на сайте, для использования в опции. Поскольку пользовательские роли могут быть созданы, мы не можем предполагать, что роли по умолчанию являются единственными доступными.
Каков наилучший способ получить список?
security
users
capabilities
user-roles
jerclarke
источник
источник
Ответы:
Роли хранятся в глобальной переменной
$wp_roles
.Идеальная функция
get_editable_roles()
от/wp-admin/includes/user.php
«Редактируемые» часть , потому что он предлагает другие плагины возможность фильтрации списка в случае , если кто - то другой , чем администратор имеет
'edit_users'
привилегию (и , таким образом , потребности «администратора» , чтобы удалить из списка, в противном случае , что пользователь может сделать себя админ). Плагины управления ролями, используемые для создания пользовательских ролей, - это те, которые будут использовать этот фильтр. В противном случае эта функция по существуget_roles()
(которая не существует) .Предположительно, ваш плагин предложит страницу настроек только тому, у кого есть возможности уровня администратора, например, он
'manage_options'
является администратором с доступом ко всем ролям, поэтому фильтр не должен влиять на вас.Также есть
wp_dropdown_roles()
роли в качестве<option>
полей для<select>
списка (хотя флажки, вероятно, будут работать лучше во многих сценариях, когда вы выбираете, кто имеет доступ к чему-либо) .источник
Попробуй это:
PS хех, пропустил это объяснение и отвечу, слишком быстро мне :)
источник
Вот как вы можете найти список ролей без каких-либо плагинов или функций http://screencast.com/t/uaWsGLAR3Sh
источник
Для тех, у кого есть многоязычный сайт, функция
возвращает локализованный массив следующим образом (имена ролей на словацком языке):
источник
Вот как получить массив всех существующих пользовательских ролей и возможностей для каждой роли в WordPress. Если вы не хотите выводить его на экран, пропустите последнюю строку. Переменная $ role в строке 2 будет содержать массив пользователей и возможностей, так что вы сможете использовать его так, как вам нужно. Ниже приведен пример возвращаемого массива.
источник