diff --git bp-activity/bp-activity-cache.php bp-activity/bp-activity-cache.php
index a79b3dd..a7e5965 100644
|
|
|
function bp_activity_update_meta_cache( $activity_ids = false ) { |
| 32 | 32 | 'meta_table' => $bp->activity->table_name_meta, |
| 33 | 33 | 'cache_key_prefix' => 'bp_activity_meta' |
| 34 | 34 | ); |
| 35 | | |
| | 35 | |
| 36 | 36 | bp_update_meta_cache( $cache_args ); |
| 37 | 37 | } |
| | 38 | |
| | 39 | /** |
| | 40 | * Clear the cache for all metadata of a given activity |
| | 41 | * |
| | 42 | * @param int $activity_id |
| | 43 | */ |
| | 44 | function bp_activity_clear_meta_cache_for_activity( $activity_id ) { |
| | 45 | global $wp_object_cache; |
| | 46 | |
| | 47 | if ( is_object( $wp_object_cache ) && ! empty( $wp_object_cache->cache['bp'] ) ) { |
| | 48 | foreach ( $wp_object_cache->cache['bp'] as $ckey => $cvalue ) { |
| | 49 | if ( 0 === strpos( $ckey, 'bp_activity_meta_' . $activity_id ) ) { |
| | 50 | wp_cache_delete( $ckey, 'bp' ); |
| | 51 | } |
| | 52 | } |
| | 53 | } |
| | 54 | } |
diff --git bp-activity/bp-activity-classes.php bp-activity/bp-activity-classes.php
index 8c9f66b..995cc9a 100644
|
|
|
class BP_Activity_Activity { |
| 435 | 435 | else |
| 436 | 436 | $activity_ids = implode ( ',', array_map( 'absint', explode ( ',', $activity_ids ) ) ); |
| 437 | 437 | |
| | 438 | foreach ( (array) $activity_ids as $activity_id ) { |
| | 439 | bp_activity_clear_meta_cache_for_activity( $activity_id ); |
| | 440 | } |
| | 441 | |
| 438 | 442 | return $wpdb->query( "DELETE FROM {$bp->activity->table_name_meta} WHERE activity_id IN ({$activity_ids})" ); |
| 439 | 443 | } |
| 440 | 444 | |