4ответ(ов) в теме
maxmad15
не в сети 8 лет
На сайте с 06.05.2016
Участник
Тем 12
Сообщения 36
1
11:31

Здравствуйте!
В кабинете можно добавлять вкладки с помощью дополнений WP-Recall, при написании своего дополнения есть опция 'public', определяющая приватность вывода вкладки. Интересует возможность ограничить вывод вкладки кабинета Группой пользователя. т.е. если пользователь не относится к конкретной группе(имеются ввиду группы пользователей самого WordPress) то этот пользователь не будет видеть вкладку как в своем кабинете, так и на страницах профиля других пользователей.
Пример: Пользователи имеющие группу "Custom" видят вкладку "Чат " в кабинете, а все остальные пользователи не видят эту вкладку.
Как это можно реализовать ?

0
Вова (Otshelnik-Fm)
не в сети 59 минут
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
2
11:42

Здравствуйте.
Перед функцией rcl_block (в которой вписывается опция public), делайте проверку на нужную вам роль.
Как проверить роль - в интернете тонна информации

1
Андрей CS
не в сети 4 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16928
3
12:38

Есть еще вариант реализации через дополнение Profile Types Manager, но там работа не с ролями ВП, а со значениями поля профиля выбранного в качестве указания типа профиля.

1
maxmad15
не в сети 8 лет
На сайте с 06.05.2016
Участник
Тем 12
Сообщения 36
4
13:01

Otshelnik-Fm сказал(а)

Здравствуйте.
Перед функцией rcl_block (в которой вписывается опция public), делайте проверку на нужную вам роль.
Как проверить роль - в интернете тонна информации

Андрей CS сказал(а)

Есть еще вариант реализации через дополнение Profile Types Manager, но там работа не с ролями ВП, а со значениями поля профиля выбранного в качестве указания типа профиля.

Спасибо, разобрался с помощью примера приведенного Андреем в этой

Вы не можете просматривать опубликованные ссылки

function get_wp_user_role() {
    global $current_user;
    return $current_user->roles[0];
}
add_filter('tab_data_rcl','edit_chat_tab_data');
function edit_chat_tab_data($data){
    if($data['id'] != 'chat') return $data;
    //тут пишем название роли для которой вкладка показывается
    if(get_wp_user_role()=='Customer') return $data;	
    return false;
}

0
Тема закрыта. Публикация новых сообщений запрещена.