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
3074 3074 * @param array $post_categories Optional. List of categories. 3075 3075 * @return bool|mixed 3076 3076 */ 3077 function wp_set_post_categories($post_ID = 0, $post_categories = array() ) {3077 function wp_set_post_categories($post_ID = 0, $post_categories = array() ) { 3078 3078 $post_ID = (int) $post_ID; 3079 3079 $post_type = get_post_type( $post_ID ); 3080 3080 $post_status = get_post_status( $post_ID ); 3081 $post_categories = array_filter( (array) $post_categories ); 3082 3081 3083 // 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 ) ) { 3083 3085 if ( 'post' == $post_type && 'auto-draft' != $post_status ) 3084 $post_categories = array( get_option( 'default_category') );3086 $post_categories = array( get_option( 'default_category' ) ); 3085 3087 else 3086 3088 $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 } 3090 3092 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' ); 3097 3094 } 3098 3095 3099 3096 /**
