Ticket #16567: 16567.3.diff
File 16567.3.diff, 2.0 KB (added by , 11 years ago) |
---|
-
src/wp-admin/includes/ajax-actions.php
413 413 $popular_ids = wp_popular_terms_checklist($taxonomy->name, 0, 10, false); 414 414 415 415 foreach ( $names as $cat_name ) { 416 $cat_name = trim($cat_name); 417 $category_nicename = sanitize_title($cat_name); 418 if ( '' === $category_nicename ) 416 $cat_id = wp_insert_term( $cat_name, $taxonomy->name, array( 'parent' => $parent ) ); 417 if ( is_wp_error( $cat_id ) && $cat_id->get_error_code() == 'term_exists' ) { 418 $cat_id = $cat_id->get_error_data(); 419 } 420 421 if ( is_wp_error( $cat_id ) || ! $cat_id ) { 419 422 continue; 420 if ( !$cat_id = term_exists( $cat_name, $taxonomy->name, $parent ) ) 421 $cat_id = wp_insert_term( $cat_name, $taxonomy->name, array( 'parent' => $parent ) ); 422 if ( is_wp_error( $cat_id ) ) 423 continue; 424 else if ( is_array( $cat_id ) ) 423 } else { 425 424 $cat_id = $cat_id['term_id']; 425 } 426 426 427 $checked_categories[] = $cat_id; 427 428 if ( $parent ) // Do these all at once in a second 428 429 continue; … … 732 733 $names = explode(',', wp_unslash( $_POST['newcat'] ) ); 733 734 $x = new WP_Ajax_Response(); 734 735 foreach ( $names as $cat_name ) { 735 $cat_name = trim($cat_name); 736 $slug = sanitize_title($cat_name); 737 if ( '' === $slug ) 736 $cat_id = wp_insert_term( $cat_name, $taxonomy->name, array( 'parent' => $parent ) ); 737 if ( is_wp_error( $cat_id ) && $cat_id->get_error_code() == 'term_exists' ) { 738 $cat_id = $cat_id->get_error_data(); 739 } 740 741 if ( is_wp_error( $cat_id ) || ! $cat_id ) { 738 742 continue; 739 if ( !$cat_id = term_exists( $cat_name, 'link_category' ) ) 740 $cat_id = wp_insert_term( $cat_name, 'link_category' ); 741 if ( is_wp_error( $cat_id ) ) 742 continue; 743 else if ( is_array( $cat_id ) ) 743 } else { 744 744 $cat_id = $cat_id['term_id']; 745 } 746 745 747 $cat_name = esc_html( $cat_name ); 746 748 $x->add( array( 747 749 'what' => 'link-category',