public
Last active

Blog Comments in Activity (bca) Shows blog post comments in buddypress' activity stream. Does currently not keep track of editing or removing comments.

  • Download Gist
bca.php
PHP
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
<?php
 
/*
* Blog Comments in Buddypress Activity
* WARNING: Test thoroughly if it works in your environment before using in production code.
* LICENSE: Public domain
*/
 
/*
* When a new comment gets added to the database, add this comment to the
* activity stream
*/
function bca_record_activity($comment_id, $approval) {
if($approval == 1) {
$comment = get_comment($comment_id);
$userlink = bp_core_get_userlink($comment->user_id);
$postlink = '<a href="' . get_permalink($comment->comment_post_ID) . '">'
. get_the_title($comment->comment_post_ID) . '</a>';
bp_activity_add(array(
'action' => sprintf( __( '%1$s commented on the post, %2$s', 'buddypress' ),
$userlink, $postlink),
'content' => $comment->comment_content,
'component' => 'bp_plugin',
'user_id' => $comment->user_id,
'type' => 'new_blog_comment',
 
));
}
}
//comment_post is triggered "just after a comment is saved in the database".
add_action('comment_post', 'bca_record_activity', 10, 2);
 
/*
* We want activity entries of blog comments to be shown as "mini"-entries
*/
function bca_minify_activity($array) {
$array[] = 'new_blog_comment';
return $array;
}
add_filter('bp_activity_mini_activity_types', 'bca_minify_activity');
 
/*
* Disables comments on this type of activity entry
*/
function bca_remove_commenting($can_comment) {
if($can_comment == true) {
$can_comment = ! ('new_blog_comment' == bp_get_activity_action_name());
}
return $can_comment;
}
add_filter('bp_activity_can_comment', 'bca_remove_commenting');
 
?>

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.