bp_messages_delete_meta( int $message_id, string|bool $meta_key = false, string|bool $meta_value = false, bool $delete_all = false )
Delete metadata for a message.
Description
If $meta_key is false, this will delete all meta for the message ID.
See also
- delete_metadata(): for full documentation excluding $meta_type variable.
Parameters
- $message_id
-
(Required) ID of the message to have meta deleted for.
- $meta_key
-
(Optional) Meta key to delete.
Default value: false
- $meta_value
-
(Optional) Meta value to delete.
Default value: false
- $delete_all
-
(Optional) Whether or not to delete all meta data.
Default value: false
Return
(bool) True on successful delete, false on failure.
Source
File: bp-messages/bp-messages-functions.php
594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 | function bp_messages_delete_meta( $message_id , $meta_key = false, $meta_value = false, $delete_all = false ) { // Legacy - if no meta_key is passed, delete all for the item. if ( empty ( $meta_key ) ) { global $wpdb ; $keys = $wpdb ->get_col( $wpdb ->prepare( "SELECT meta_key FROM {$wpdb->messagemeta} WHERE message_id = %d" , $message_id ) ); // With no meta_key, ignore $delete_all. $delete_all = false; } else { $keys = array ( $meta_key ); } $retval = false; // No keys, so stop now! if ( empty ( $keys ) ) { return $retval ; } add_filter( 'query' , 'bp_filter_metaid_column_name' ); foreach ( $keys as $key ) { $retval = delete_metadata( 'message' , $message_id , $key , $meta_value , $delete_all ); } remove_filter( 'query' , 'bp_filter_metaid_column_name' ); return $retval ; } |
Changelog
Version | Description |
---|---|
BuddyPress 2.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.