• Knowledge Base
    • All Articles
    • BuddyBoss Platform
    • BuddyBoss Theme
    • BuddyBoss App
    • Integrations
    • Advanced Setup
    • Troubleshooting
    • Release Notes
      • BuddyBoss Platform
      • BuddyBoss Platform Pro
      • BuddyBoss Theme
      • BuddyBoss App
      • BuddyBoss App Plugin
      • Other Products
  • Developers
    • Developer Tutorials
      • Web Development
      • App Development
    • Code Reference
      • Functions
      • Hooks
      • Classes
      • Methods
      • Commands
      • App Codex
    • REST API
      • BuddyBoss Platform
      • BuddyBoss App
    • Font Cheatsheet
    • Github Project
  • Roadmap
  • Go to BuddyBoss
    Contact Support
    Filter
    • Knowledge Base
      • All Articles
      • BuddyBoss Platform
      • BuddyBoss Theme
      • BuddyBoss App
      • Integrations
      • Advanced Setup
      • Troubleshooting
      • Release Notes
        • BuddyBoss Platform
        • BuddyBoss Platform Pro
        • BuddyBoss Theme
        • BuddyBoss App
        • BuddyBoss App Plugin
        • Other Products
    • Developers
      • Developer Tutorials
        • Web Development
        • App Development
      • Code Reference
        • Functions
        • Hooks
        • Classes
        • Methods
        • Commands
        • App Codex
      • REST API
        • BuddyBoss Platform
        • BuddyBoss App
      • Font Cheatsheet
      • Github Project
    • Roadmap
    • Go to BuddyBoss
    Filter
    Filter

    Contents

    • Description
    • Parameters
    • Return
    • Source
    • Changelog
    • Related
    Code Reference Classes BP_Signup BP_Signup::delete()

    BP_Signup::delete( array $signup_ids = array() )

    Delete a pending account.

    Description

    Parameters

    $signup_ids

    (Optional) Single ID or list of IDs to delete.

    Default value: array()

    Return

    (array)

    Source

    File: bp-members/classes/class-bp-signup.php

    	public static function delete( $signup_ids = array() ) {
    		global $wpdb;
    
    		if ( empty( $signup_ids ) || ! is_array( $signup_ids ) ) {
    			return false;
    		}
    
    		$to_delete = self::get( array(
    			'include' => $signup_ids,
    		) );
    
    		if ( ! $signups = $to_delete['signups'] ) {
    			return false;
    		}
    
    		$result = array();
    
    		/**
    		 * Fires before deletion of pending accounts.
    		 *
    		 * @since BuddyPress 2.0.0
    		 *
    		 * @param array $signup_ids Array of pending IDs to delete.
    		 */
    		do_action( 'bp_core_signup_before_delete', $signup_ids );
    
    		foreach ( $signups as $signup ) {
    			$user_id = username_exists( $signup->user_login );
    
    			if ( ! empty( $user_id ) && $signup->activation_key === bp_get_user_meta( $user_id, 'activation_key', true ) ) {
    
    				if ( 2 != self::check_user_status( $user_id ) ) {
    
    					// Status is not 2, so user's account has been activated.
    					$result['errors'][ $signup->signup_id ] = array( $signup->user_login, esc_html__( 'the sign-up has already been activated.', 'buddyboss' ) );
    
    					// Repair signups table.
    					self::validate( $signup->activation_key );
    
    				// We have a user id, account is not active, let's delete it.
    				} else {
    					bp_core_delete_account( $user_id );
    				}
    			}
    
    			if ( empty( $result['errors'][ $signup->signup_id ] ) ) {
    				$wpdb->delete(
    					// Signups table.
    					buddypress()->members->table_name_signups,
    					// Where.
    					array( 'signup_id' => $signup->signup_id, ),
    					// WHERE sanitization format.
    					array( '%d', )
    				);
    
    				$result['deleted'][] = $signup->signup_id;
    			}
    		}
    
    		/**
    		 * Fires after deletion of pending accounts.
    		 *
    		 * @since BuddyPress 2.0.0
    		 *
    		 * @param array $signup_ids Array of pending IDs to delete.
    		 * @param array $result     Array of data for deleted accounts.
    		 */
    		do_action( 'bp_core_signup_after_delete', $signup_ids, $result );
    
    		/**
    		 * Filters the result of the metadata for deleted pending accounts.
    		 *
    		 * @since BuddyPress 2.0.0
    		 *
    		 * @param array $result Updated metadata related to deleted pending accounts.
    		 */
    		return apply_filters( 'bp_core_signup_delete', $result );
    	}
    

    Expand full source code Collapse full source code

    Changelog

    Changelog
    Version Description
    BuddyPress 2.0.0 Introduced.

    Related

    Uses

    Uses
    Uses Description
    bp-loader.php: buddypress()

    The main function responsible for returning the one true BuddyBoss Instance to functions everywhere.

    bp-members/bp-members-functions.php: bp_core_delete_account()

    Process account deletion requests.

    bp-members/classes/class-bp-signup.php: bp_core_signup_before_delete

    Fires before deletion of pending accounts.

    bp-members/classes/class-bp-signup.php: bp_core_signup_after_delete

    Fires after deletion of pending accounts.

    bp-members/classes/class-bp-signup.php: bp_core_signup_delete

    Filters the result of the metadata for deleted pending accounts.

    bp-members/classes/class-bp-signup.php: BP_Signup::get()

    Fetch signups based on parameters.

    bp-members/classes/class-bp-signup.php: BP_Signup::check_user_status()

    Check a user status (from wp_users) on a non-multisite config.

    bp-members/classes/class-bp-signup.php: BP_Signup::validate()

    Activate a signup.

    bp-core/bp-core-functions.php: bp_get_user_meta()

    Get a piece of usermeta.

    Show 4 more uses Hide more uses

    Used By
    Used By Description
    bp-members/classes/class-bp-rest-signup-endpoint.php: BP_REST_Signup_Endpoint::delete_item()

    Delete a signup.

    bp-members/classes/class-bp-members-admin.php: BP_Members_Admin::signups_admin_load()

    Set up the signups admin page.

    Questions?

    We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.

    © 2025 • BuddyBoss