diff --git a/wp-includes/taxonomy.php b/wp-includes/taxonomy.php index 7f22050453..41d1035d94 100644 --- a/wp-includes/taxonomy.php +++ b/wp-includes/taxonomy.php @@ -1152,13 +1152,15 @@ function wp_insert_term( $term, $taxonomy, $args = array() ) { } if ( ! $term_id = is_term($slug) ) { - $wpdb->insert( $wpdb->terms, compact( 'name', 'slug', 'term_group' ) ); + if ( false === $wpdb->insert( $wpdb->terms, compact( 'name', 'slug', 'term_group' ) ) ) + return new WP_Error('db_insert_error', __('Could not insert term into the database')); $term_id = (int) $wpdb->insert_id; } else if ( is_taxonomy_hierarchical($taxonomy) && !empty($parent) ) { // If the taxonomy supports hierarchy and the term has a parent, make the slug unique // by incorporating parent slugs. $slug = wp_unique_term_slug($slug, (object) $args); - $wpdb->insert( $wpdb->terms, compact( 'name', 'slug', 'term_group' ) ); + if ( false === $wpdb->insert( $wpdb->terms, compact( 'name', 'slug', 'term_group' ) ) ) + return new WP_Error('db_insert_error', __('Could not insert term into the database')); $term_id = (int) $wpdb->insert_id; }