Skip to content

BuddyPress activity with WP User Frontend

Let's say you want to post something via WPUF in your BuddyPress activity. How will you do that? Here's what we are going to do today:

  • Add a new custom field in the form
  • Whatever you put in the custom field will be posted as an activity in your BuddyPress profile
  • Also, it will be posted in a group you want

Screen Shot 2014-03-06 at 1.23.12 PM

Add a new custom field with a meta key bp_activity

Screen Shot 2014-03-06 at 1.27.09 PM

Screen Shot 2014-03-06 at 1.29.17 PM

Now it looks like this:

Paste these codes into your themes functions.php.

[php] function wpuf_bp_add_user_activity( $activity_content ) {
global $bp;

$user_id = get_current_user_id();
$from_user_link = bp_core_get_userlink( $user_id );
$activity_action = sprintf( __( ‘%s posted an update', ‘buddypress' ), $from_user_link );
$primary_link = bp_core_get_userlink( $user_id, false, true );

$activity_id = bp_activity_add( array(
‘user_id' => $user_id,
‘action' => $activity_action,
‘content' => $activity_content,
‘primary_link' => $primary_link,
‘component' => $bp->activity->id,
‘type' => ‘activity_update'
) );

return $activity_id;
}

function wpuf_bp_add_group_activity( $group_id, $content ) {
$user_id = get_current_user_id();

$activity_id = groups_post_update( array(
‘user_id' => $user_id,
‘group_id' => $group_id,
‘content' => $content
) );

return $activity_id;
}

function wpufe_add_bp_activities( $post_id ) {

if ( isset( $_POST[‘bp_activity']) ) {
$content = trim( $_POST[‘bp_activity'] );

if ( !strlen( $content ) ) {
return;
}

$group_id = 1;

wpuf_bp_add_user_activity( $content );
wpuf_bp_add_group_activity( $group_id, $content );
}

}

add_action( ‘wpuf_add_post_after_insert', ‘wpufe_add_bp_activities' );
[/php]

Note: Here in the code, the $group_id is static. Change the group ID to your desired group ID.

WAIT! Don’t Miss Our Biggest Sale of the Year!

BlackFriday

EarlyDeals

Save Up To

81%

on weDevs Products

Hurry! This massive deal disappears when the timer runs out.

00Days00Hour00Min00Sec
Claim Yours & Save Up To 81%