WordPress.org

Make WordPress Core

Ticket #11683: update-meta-ids.diff

File update-meta-ids.diff, 1.6 KB (added by wonderboymusic, 20 months ago)
  • wp-includes/meta.php

     
    135135                } 
    136136        } 
    137137 
     138        $_meta_ids = $wpdb->get_col( $wpdb->prepare( "SELECT $id_column FROM $table WHERE meta_key = %s AND $column = %d", $meta_key, $object_id ) ); 
     139         
    138140        $_meta_value = $meta_value; 
    139141        $meta_value = maybe_serialize( $meta_value ); 
    140142 
     
    146148                $where['meta_value'] = $prev_value; 
    147149        } 
    148150 
    149         do_action( "update_{$meta_type}_meta", $meta_id, $object_id, $meta_key, $_meta_value ); 
     151        foreach ( $_meta_ids as $_meta_id ) 
     152                do_action( "update_{$meta_type}_meta", $_meta_id, $object_id, $meta_key, $_meta_value ); 
    150153 
    151         if ( 'post' == $meta_type ) 
    152                 do_action( 'update_postmeta', $meta_id, $object_id, $meta_key, $meta_value ); 
    153  
     154        if ( 'post' == $meta_type ) { 
     155                foreach ( $_meta_ids as $_meta_id ) 
     156                        do_action( 'update_postmeta', $_meta_id, $object_id, $meta_key, $meta_value ); 
     157        } 
     158                 
    154159        $wpdb->update( $table, $data, $where ); 
    155160 
    156161        wp_cache_delete($object_id, $meta_type . '_meta'); 
    157162 
    158         do_action( "updated_{$meta_type}_meta", $meta_id, $object_id, $meta_key, $_meta_value ); 
     163        foreach ( $_meta_ids as $_meta_id ) 
     164                do_action( "updated_{$meta_type}_meta", $_meta_id, $object_id, $meta_key, $_meta_value ); 
    159165 
    160         if ( 'post' == $meta_type ) 
    161                 do_action( 'updated_postmeta', $meta_id, $object_id, $meta_key, $meta_value ); 
     166        if ( 'post' == $meta_type ) { 
     167                foreach ( $_meta_ids as $_meta_id ) 
     168                        do_action( 'updated_postmeta', $_meta_id, $object_id, $meta_key, $meta_value ); 
     169        } 
    162170 
    163171        return true; 
    164172}