diff --git a/wp-admin/admin-db.php b/wp-admin/admin-db.php index b755d8c421..225119d1c9 100644 --- a/wp-admin/admin-db.php +++ b/wp-admin/admin-db.php @@ -151,6 +151,9 @@ function wp_update_category($catarr) { $cat_ID = (int) $catarr['cat_ID']; + if( $cat_ID == $catarr['category_parent'] ) + return false; + // First, get all of the original fields $category = get_category($cat_ID, ARRAY_A); diff --git a/wp-admin/categories.php b/wp-admin/categories.php index bd93bcb736..9504eefdda 100644 --- a/wp-admin/categories.php +++ b/wp-admin/categories.php @@ -62,9 +62,11 @@ case 'editedcat': if ( !current_user_can('manage_categories') ) wp_die(__('Cheatin’ uh?')); - wp_update_category($_POST); + if ( wp_update_category($_POST) ) + wp_redirect('categories.php?message=3'); + else + wp_redirect('categories.php?message=5'); - wp_redirect('categories.php?message=3'); exit; break; @@ -77,6 +79,7 @@ $messages[1] = __('Category added.'); $messages[2] = __('Category deleted.'); $messages[3] = __('Category updated.'); $messages[4] = __('Category not added.'); +$messages[5] = __('Category not updated.'); ?>