How to Modify/Change a Buddypress/WordPress Account Activation Process

I’m developing a custom BuddyPress/WordPress Plugin. Here’s how a user would normally register.

  1. A user registers as usual on registration page
  2. His/Her account is deactivated till he/she clicks on activation link in his/her email
  3. He/She is sent an activation link through the email he/she registered with
  4. He/She activates his account by clicking on the link

I’d like to modify step 4 above so that even if the user clicks on the activation link, his/her account remains deactivated till he/she fills another form on the site for example, a custom survey form. Once this form is filled successfuly, the user can now be activated.

I’ll be programming the custom form myself so that it works the way I want it to, with wordpress/Buddypress actions/filters.

So my question is: How can you modify the WordPress/Buddypress activation Process so that the account remains deactivated till the user fill my custom form?

Here’s the main action that I intend to use and it fires as soon as the user clicks the buddypress account activation link in their email:

bp_core_signup_user

I’ll appreciate if someone can point in the right direction on modifying the Buddypress/Wordpress activation process.

Please help. This is where I’m stuck.

1
1

You can add the bp_core_signup_send_activation_key filter to prevent the activation email being sent as follows

add_filter('bp_core_signup_send_activation_key', 'my_bp_core_signup_send_activation_key', 10, 5);

function my_bp_core_signup_send_activation_key($send, $user_id, $user_email, $activation_key, $usermeta) {
    return false;
}

Leave a Comment