BP_Groups_Group::delete()
Delete the current group.
Description Description
Return Return
(bool) True on success, false on failure.
Source Source
File: bp-groups/classes/class-bp-groups-group.php
public function delete() { global $wpdb; // Delete groupmeta for the group. groups_delete_groupmeta( $this->id ); // Fetch the user IDs of all the members of the group. $user_ids = BP_Groups_Member::get_group_member_ids( $this->id ); $user_id_str = esc_sql( implode( ',', wp_parse_id_list( $user_ids ) ) ); // Modify group count usermeta for members. $wpdb->query( "UPDATE {$wpdb->usermeta} SET meta_value = meta_value - 1 WHERE meta_key = 'total_group_count' AND user_id IN ( {$user_id_str} )" ); // Now delete all group member entries. BP_Groups_Member::delete_all( $this->id ); /** * Fires before the deletion of a group. * * @since 1.2.0 * * @param BP_Groups_Group $this Current instance of the group item being deleted. Passed by reference. * @param array $user_ids Array of user IDs that were members of the group. */ do_action_ref_array( 'bp_groups_delete_group', array( &$this, $user_ids ) ); wp_cache_delete( $this->id, 'bp_groups' ); $bp = buddypress(); // Finally remove the group entry from the DB. if ( !$wpdb->query( $wpdb->prepare( "DELETE FROM {$bp->groups->table_name} WHERE id = %d", $this->id ) ) ) return false; return true; }
Changelog Changelog
Version | Description |
---|---|
1.6.0 | Introduced. |