Домой Wp-Recall WP-Recall: Вопросы и ответы Скрыть кнопку области меню в ЛК для гостей
6ответ(ов) в теме
toka
не в сети 3 месяца
На сайте с 01.10.2017
Участник
Тем 27
Сообщения 139
1
00:48
Версия WP-Recall: 16.17.8

Подскажите как скрыть кнопку области меню в ЛК для гостей.

0
Вова (Otshelnik-Fm)
не в сети 7 часов
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18642
2
09:23

Здравствуйте.

1. Или зацепившись за родительский класс кабинета

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

visitor-guest - класс назначается только когда просматривает не залогиненый.

2. Или использовать фильтр rcl_tabs

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

по форуму много примеров по нему, воспользуйтесь поиском.

3. Или использовать дополнение Lock Cabinet From Guests

Вы не можете просматривать опубликованные ссылки
Редакции сообщения
01.06.2019 09:24Otshelnik-FmПричина: не указано
2
toka
не в сети 3 месяца
На сайте с 01.10.2017
Участник
Тем 27
Сообщения 139
3
14:52

Я правильно понимаю, что второй способ надежнее?

0
toka
не в сети 3 месяца
На сайте с 01.10.2017
Участник
Тем 27
Сообщения 139
4
17:44

1. Или зацепившись за родительский класс кабинета

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

visitor-guest - класс назначается только когда просматривает не залогиненый.

Этот номер не пройдет, т.к. любой зарегистрированный по отношению к ЛК другого пользователя то же получает visitor-guest

0
Андрей CS
не в сети 8 часов
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16854
5
18:45

toka сказал(а)
Этот номер не пройдет

пройдет, если используемая тема добавляет в тег body нужные классы, для неавторизованного пользователя там будет присутствовать свой класс, ну или можно самому туда добавить такие классы, например, через хук

Вы не можете просматривать опубликованные ссылки
1
toka
не в сети 3 месяца
На сайте с 01.10.2017
Участник
Тем 27
Сообщения 139
6
21:26

В конечном итоге результат достигнут.
Это в functions.php:

Спойлер

<?php
// Выводим предупреждение в ЛК пользователя если просматривает Гость
function add_notify_guest(){
global $rcl_user_URL, $user_ID;
if(!$user_ID) rcl_notice_text('Вам необходимо <a href="http://ваш-сайт/account">авторизоваться</a> для просмотра информации!','success');
}
add_action('init','add_notify_guest');

// Добавляем в body class для определения Гостя
function wp_add_body_guest_class($classes) {
global $rcl_user_URL, $user_ID;
if(!$user_ID) {
$classes[] = 'my-class-guest';
}
return $classes;
}
add_filter('body_class', 'wp_add_body_guest_class');

// Скрытие кнопок ЛК в области меню, счетчиков и действий для Гостя
function filter_function_guest_no_button( $data ) {
global $rcl_user_URL, $user_ID;
if(!$user_ID) {
$data['chat']['public'] = 0 ; // Личный чат
$data['allcomments']['public'] = 0 ; // Комментарии
$data['groups']['public'] = 0 ; // Группы
$data['notes']['public'] = 0 ; // Заметки
$data['rating']['public'] = 0 ; // Рейтинг
$data['followers']['public'] = 0 ; // Подписчики
}
return $data ;
}
add_filter( 'rcl_tabs', 'filter_function_guest_no_button' );
?>


Это в style.css:
Спойлер

.my-class-guest .icon-user-info {
display: none !important;
}
.my-class-guest .notify-lk .success {
border-left: none !important;
}

Благодарю всех за помощь. Тему можно закрывать.

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