Make WordPress Core

Ticket #9009: 9009.diff

File 9009.diff, 800 bytes (added by Denis-de-Bernardy, 16 years ago)

refreshed against 11255

  • wp-includes/post.php

     
    684684                return false;
    685685
    686686        global $wpdb;
    687         if ( $wpdb->query($wpdb->prepare("DELETE FROM $wpdb->postmeta WHERE meta_key = %s", $post_meta_key)) ) {
    688                 /** @todo Get post_ids and delete cache */
    689                 // wp_cache_delete($post_id, 'post_meta');
     687        $post_ids = $wpdb->get_col($wpdb->prepare("SELECT DISTINCT post_id FROM $wpdb->postmeta WHERE meta_key = %s", $post_meta_key));
     688        if ( $post_ids ) {
     689                $wpdb->query($wpdb->prepare("DELETE FROM $wpdb->postmeta WHERE meta_key = %s", $post_meta_key));
     690                foreach ( $post_ids as $post_id )
     691                        wp_cache_delete($post_id, 'post_meta');
    690692                return true;
    691693        }
    692694        return false;