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.

Description

Parameters

$activity_id

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

$meta_key

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

Default value: ''

$meta_value

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

Default value: ''

$delete_all

(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

Return

(bool) True on success, false on failure.

Source

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;
}

Changelog

Changelog
Version Description
BuddyPress 1.2.0 Introduced.

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.