Поддержка BuddyPress Пара вопросов по BP

  • Всем привет!
    Подскажите пожалуйста, как можно решить эти две задачи:

    1. Через цикл bp_has_members(‘type=random&max=12’), вывожу 12 случайных пользователей. Надо выводить пользователей только с загруженными аватарами, то есть дефолтных в списке не должно быть.

    2. Как вывести уведомления о новых ЛС. Сбоку у меня есть колонка польщзователя, надо чтобы в ней было написано У вас нет новых сообщений или У вас N новых сообщений.

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • 1. Стандартным образом — никак. Надо внедряться через фильтры внутрь кода и менять систему получения пользователей.
    Можно очень грубо в шаблоне внутри лупа прописать через строковые функции php проверку пути к рисунку, и если путь — стандартный, то не выводить пользователя (прям псевдокод получился).
    2. А чем вам Уведомления в BuddyBar не нравятся?
    Можно взять add_action создаваемого уведомления о поступлении нового личного сообщения и дописать навешивание action на ваш собственный do_action('your_own_action_to_display_messages'), который должен быть прописано в нужном месте шаблона.

    PS Отдельные вопросы задавайте в отдельных постах.

    Спасибо
    1. Я так и понял, закажу у программиста такой фильтр.
    2. Админбар отключен, это нестандартная тема для BP. Проблему решил так:

    <?php if ( bp_has_message_threads() ) : ?>
    
    			<?php $s = 0; ?>
    
     		<?php while ( bp_message_threads() ) : bp_message_thread(); ?>
    
            <?php if (bp_message_thread_has_unread()) : ?>
    
                          <?php $s++; ?>
             <?php endif;?>
    
      		<?php endwhile; ?>
    
      		 <?php if ($s > 0) : ?>
    
    У вас <span style="font-weight:bold;color:#ff5dbc;"><?php echo $s; ?></span> новых сообщений
                <?php else: ?>
    У Вас нет новых сообщений
    <?php endif;?>
    
    	<?php endif;?>

    Я думаю, красивее будет просто написать вот так:
    $count = BP_Messages_Thread::get_inbox_count();
    И не писать этот жуткий и не нужный луп.

    Благодарю, действительно простое и удобное решение

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Тема «Пара вопросов по BP» закрыта для новых ответов.