По умолчанию о новых уведомлениях вы можете узнать только в своем личном кабинете, что на мой взгляд не удобно. О сообщении вам подскажет всплывающее окошко со звуком - что мне так же не интересно.
Конечно же вы можете воспользоваться бесплатным аддоном
Notify Panel - Панель уведомлений для плагина Wp-Recall
Но и это в моем случае не решение:
- Я не замечаю на этой панели о каких-то уведомлениях.
- Она выводит лишнюю для меня информацию.
Мне интересно получить только количество новых уведомлений / сообщений, а уже что это будет - пользователь узнает в личном кабинете.
Делается это очень просто:
// Глобальная переменная. ID текущего пользователя global $user_ID; // Получаем кол-во новых уведомлений $user_notice = rcl_count_noread_notifications($user_ID); // Получаем кол-во новых сообщений $user_ls = $wpdb->get_var("SELECT COUNT(*) FROM ".RCL_PREF."chat_messages WHERE private_key = '$user_ID' AND message_status='0'");
Дальше думаю все понятно - в переменных будет либо 0 либо кол-во новых уведомлений / сообщений
Если вы вообще не шарите, привожу пример как это используется у меня:
<div class="reg<?php if($user_notice !=0){echo " new_notif";};?>"> <a href="<?php echo get_author_posts_url($user_ID);?>&tab=notifications"> Уведомления: <?php echo $user_notice;?> </a> </div> <div class="reg<?php if($user_ls !=0){echo " new_notif";};?>" style="margin-top:8px;"> <a href="<?php echo get_author_posts_url($user_ID);?>&tab=privat"> Сообщения: <?php echo $user_ls;?> </a> </div>
Что это за страшная вещь? Все просто:
Если уведомлений / сообщений нет - class = "reg" (в этом случае текст серый)
Если уведомления / сообщения есть - class = "reg new_notif" (в этом случае текст зеленый)
Ссылки
<?php echo get_author_posts_url($user_ID);?>&tab=notifications
Ведет на страницу уведомлений, т.е. site.ru/?author=<NAME>&tab=notifications
<?php echo get_author_posts_url($user_ID);?>&tab=privat
Ведет на страницу сообщений, т.е. site.ru/?author=<ID>&tab=privat
Ну собственно и скриншот как это выглядит у меня:
Теперь перед нами стоит другая проблема: зачем нам выводить количество новых сообщений если на сайте по-умолчанию есть всплывающее окошко, которое показывается если вам пришло сообщение, да еще и со звуком.
Собственно именно из-за этого окошка я и решил выводить свое уведомление, т.к. идея всплывающего окна хоть и удобна, но лично мне напоминает какой-то всплывающий баннер, да еще и со звуком. Я не говорю что это плохо, но лично мне не нравится.
Отключить это окно очень просто.
Добавьте в functions.php вашей темы
remove_action('wp_enqueue_scripts','rcl_messages_scripts');
Хочу отметить что мы не полностью убиваем подключение всех скриптов аддона. На сайте у нас уже не будет всплывать окошко со звуком. А вот на странице переписки звук при получении сообщения останется - там мне кажется он вполне уместен.
На этом все.
Было бы интересно более подробное описание куда что вставлять и какие могут быть при этом проблемы. Вставил по наитию, не получилось, удалил код.
А что конкретно не понятно?
1 блок с кодом - проверка наличия уведомлений и сообщений в базе
2 блок с кодом - вывод полученной информации
Проблем никаких нет, ну по крайней мере я не заметил
У вас хорошие задумки которые хотелось бы видеть в качестве дополнений в WP-Recall естественно не бесплатно, думаю со мной многие бы согласились. Подумайте над разработкой дополнений будем очень признательны 🙂
Супер! спасибо.
А если не работою звуковые уведомления в базовом плагине? как быть
Писать на форуме поддержки, а не абы где