bp_activity_delete_meta( int $activity_id, string $meta_key = '', string $meta_value = '', bool $delete_all = false )

Delete a meta entry from the DB for an activity feed item.




(int) (Required) ID of the activity item whose metadata is being deleted.


(string) (Optional) The key of the metadata being deleted. If omitted, all metadata associated with the activity item will be deleted.

Default value: ''


(string) (Optional) If present, the metadata will only be deleted if the meta_value matches this parameter.

Default value: ''


(bool) (Optional) If true, delete matching metadata entries for all objects, ignoring the specified object_id. Otherwise, only delete matching metadata entries for the specified activity item. Default: false.

Default value: false


(bool) True on success, false on failure.


File: bp-activity/bp-activity-functions.php

function bp_activity_delete_meta( $activity_id, $meta_key = '', $meta_value = '', $delete_all = false ) {

	// Legacy - if no meta_key is passed, delete all for the item.
	if ( empty( $meta_key ) ) {
		$all_meta = bp_activity_get_meta( $activity_id );
		$keys     = ! empty( $all_meta ) ? array_keys( $all_meta ) : array();

		// With no meta_key, ignore $delete_all.
		$delete_all = false;
	} else {
		$keys = array( $meta_key );

	$retval = true;

	add_filter( 'query', 'bp_filter_metaid_column_name' );
	foreach ( $keys as $key ) {
		$retval = delete_metadata( 'activity', $activity_id, $key, $meta_value, $delete_all );
	remove_filter( 'query', 'bp_filter_metaid_column_name' );

	return $retval;


Version Description
BuddyPress 1.2.0 Introduced.


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.