WordPress.org

Make WordPress Core

Ticket #14821: 14821.patch

File 14821.patch, 961 bytes (added by johnbillion, 4 years ago)
  • post.php

     
    40894089 
    40904090        update_post_cache($posts); 
    40914091 
    4092         $post_ids = array(); 
    4093         foreach ( $posts as $post ) 
     4092        $post_ids = $post_types = array(); 
     4093        foreach ( $posts as $post ) { 
    40944094                $post_ids[] = $post->ID; 
     4095                $post_types[] = $post->post_type; 
     4096        } 
    40954097 
    40964098        if ( empty($post_type) ) 
    4097                 $post_type = 'post'; 
     4099                $post_type = array_unique( $post_types ); 
     4100        else if ( 'any' == $post_type ) 
     4101                $post_type = array_unique( $post_types ); 
     4102        else if ( !is_array( $post_type ) ) 
     4103                $post_type = array( $post_type ); 
    40984104 
    4099         if ( !is_array($post_type) && 'any' != $post_type && $update_term_cache ) 
    4100                 update_object_term_cache($post_ids, $post_type); 
     4105        if ( $update_term_cache ) { 
     4106                foreach ( $post_type as $type ) 
     4107                        update_object_term_cache($post_ids, $type); 
     4108        } 
    41014109 
    41024110        if ( $update_meta_cache ) 
    41034111                update_postmeta_cache($post_ids);