読者です 読者をやめる 読者になる 読者になる

Buddypress で友達申請の通知、グループへの招待の通知、プライベートメッセージの通知をサイトに出す方法

f:id:aquashine:20161126104513p:plain

 

BuddyPressを使っている方は、上記のような通知をサイト上に出したいはず。

プラグインがあればよかったがなかった。(標準であってもいいと思うのになぁ・・・)

 

BuddyPressの関数を調べたところ、幸い、豊富な関数が用意されていたので、

簡単に実現できた。

 

以下のソースを、表示させたいテンプレートファイルに貼ればいい。

 

<プライベートメッセージの件数>

<?php if (bp_get_total_unread_messages_count()>0) : ?>
<a href="/member/<?php echo bp_loggedin_user_username();?>/messages/">あなた宛ての未読のプライベートメッセージが、<?php echo bp_get_total_unread_messages_count();?>件あります。</a><br>
<?php endif; ?>

 

<アクティビティのメンション数> 

※下ではメンションのことを「あなた宛てのつぶやき」と表現している

<?php if (bp_get_total_mention_count_for_user( bp_loggedin_user_id() ) >0): ?>
あなた宛ての新規のつぶやきが、<a href="/member/<?php echo bp_loggedin_user_username();?>/activity/mentions/"><?php echo bp_get_total_mention_count_for_user( bp_loggedin_user_id() );?>件</a>あります。<br>
<?php endif ?>

 

<グループへの招待状>

<?php if (groups_get_invite_count_for_user( bp_loggedin_user_id() ) > 0 ) :?>
<a href="/member/<?php echo bp_loggedin_user_username();?>/groups/invites/">グループへの招待状が<?php echo groups_get_invite_count_for_user( bp_loggedin_user_id() );?>件届いています。</a><br>
<?php endif; ?>

 

<友達申請>
<?php if (bp_friend_get_total_requests_count() > 0 ) :?>
<a href="/member/<?php echo bp_loggedin_user_username();?>/friends/requests/">友達申請が<?php echo (bp_friend_get_total_requests_count());?>件届いています。</a>
<?php endif; ?>

 

※アクティビティへのコメント数は、標準では用意されていないので、結構大変。

以下の記事を読めば1,2時間くらいでできます。

fushigi.hatenadiary.com