Такой функции нет в классе 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.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Ноябрь 22, 2020 г.
Искал как вытянуть стоимость позиций товара из заказа в woocommerce. А в итоге обнаружил неточность в документации плагина.
Если вы располагаете идентификатором заказа, который по сути является posd_id, то алгоритм получения данных о строках заказа ...
Читать
Июль 8, 2018 г.
Очередное обновление WP плагина Genzel Breadcrumbs. Версия 1.2. Что нового?
Переработана логика "монтирования"
Монтирование позволяет задать несколько условий в части выражения "what" (что монтировать?). К примеру, можно указать что монтировать ...
Читать
Ноябрь 27, 2024 г.
Если сайт находится за неким прокси, который реализует SSL, а на веб-сервере при этом не настроен HTTPS протокол, то WP может начать бесконечный цикл переадресаций.
Начинается это сразу после изменения URL домашней страницы в админке.
Анамнез ...
Читать
Апрель 21, 2016 г.
После регистрации кастомного типа публикации в WP, вы выполучите новый раздел в адимнке, возможность добавлять и редактировать публикации данного типа.
В общем списке записей будет скорее всего два столбца - заголовок и дата. Для кастомных типов этого ...
Читать