Такой функции нет в классе WP_User. Но класс поддерживает свойство roles, которое содержит набор ролей в виде массива. Т.е. нам достаточно убедиться, что нужная роль находится в этом массиве.
Чтобы не программировать совсем уж банальные вещи, расширим всеядность функции — добавим полиморфизма относительно входных данных.
Пользователь может быть не передан (null), либо задан как ID (int) или экземпляр класса WP_User.
|
|
function user_has_role($user = null, $role) { if (is_null($user)) { $user = wp_get_current_user(); } elseif (is_numeric($user)) { $user = get_user_by<span class="simbol">(</span><span class="string">'id'</span><span class="simbol">,</span> $user<span class="simbol">)</span><span class="simbol">;</span> } $userClassName = 'WP_User'; if (is_object($user) && $user instanceof $userClassName) { return in_array($role, (array) $user->roles); } return false; } |
Функция вернет TRUE, если пользователь содержит указанную вами роль. В любом другом случае код возвращает FALSE. Хотя в случае с неверным типом объекта, по хорошему следует «кидать» исключение.
Данная запись опубликована в 07.07.2017 17:31 и размещена в рубрике wordpress.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Октябрь 19, 2011 г.
Если у вас есть сайт, и вы хотите чтобы сослаться на ваш сайт было просто, то самый легкий путь, это воспользоваться добавлением ссылок в соц. сети.
Здесь я расскажу о том, как сделать кнопку добавления ссылки на ваш сайт для twitter. "Как это сделать" ...
Читать
Апрель 1, 2025 г.
Возможно, это не полное решение проблемы, но большая его часть.
Если вам нужно отключить обработку эмоджи, которая реализована в ядре, вам потребуется отключить целую пачку обработчиков. Часть из них т.н. действия (action), другие - фильтры (filter). ...
Читать
Июль 8, 2018 г.
Очередное обновление WP плагина Genzel Breadcrumbs. Версия 1.2. Что нового?
Переработана логика "монтирования"
Монтирование позволяет задать несколько условий в части выражения "what" (что монтировать?). К примеру, можно указать что монтировать ...
Читать
Август 17, 2017 г.
При программировании в WP мы очень часто добавляем какие то фильтры и действия. А если посмотреть в код любого плагина - это сборники реализаций зацепок.
Не всегда авторы дают возможность гибко управлять поведением их плагина через настройки. Тогда ...
Читать