Ticket #5096: update-wp-set-post-catgories.diff

File update-wp-set-post-catgories.diff, 1.5 KB (added by wonderboymusic, 9 months ago)
  • wp-includes/post.php

     
    30743074 * @param array $post_categories Optional. List of categories. 
    30753075 * @return bool|mixed 
    30763076 */ 
    3077 function wp_set_post_categories($post_ID = 0, $post_categories = array()) { 
     3077function wp_set_post_categories($post_ID = 0, $post_categories = array() ) { 
    30783078        $post_ID = (int) $post_ID; 
    30793079        $post_type = get_post_type( $post_ID ); 
    30803080        $post_status = get_post_status( $post_ID ); 
     3081        $post_categories = array_filter( (array) $post_categories ); 
     3082         
    30813083        // If $post_categories isn't already an array, make it one: 
    3082         if ( !is_array($post_categories) || empty($post_categories) ) { 
     3084        if ( empty( $post_categories ) ) { 
    30833085                if ( 'post' == $post_type && 'auto-draft' != $post_status ) 
    3084                         $post_categories = array( get_option('default_category') ); 
     3086                        $post_categories = array( get_option( 'default_category' ) ); 
    30853087                else 
    30863088                        $post_categories = array(); 
    3087         } else if ( 1 == count($post_categories) && '' == reset($post_categories) ) { 
    3088                 return true; 
    3089         } 
     3089        } else { 
     3090                $post_categories = array_unique( array_map( 'intval', $post_categories ) ); 
     3091        }                
    30903092 
    3091         if ( !empty($post_categories) ) { 
    3092                 $post_categories = array_map('intval', $post_categories); 
    3093                 $post_categories = array_unique($post_categories); 
    3094         } 
    3095  
    3096         return wp_set_object_terms($post_ID, $post_categories, 'category'); 
     3093        return wp_set_object_terms( $post_ID, $post_categories, 'category' ); 
    30973094} 
    30983095 
    30993096/**