From 50130980299bd4b21e7fa4589c692beebb59bb49 Mon Sep 17 00:00:00 2001 From: Peter Westwood Date: Wed, 14 Nov 2012 22:58:24 +0000 Subject: [PATCH] XMLRPC: When Editing an existing post make sure to use wp_update_post instead of wp_insert_post so as to not perform destructive actions on the content. The wp.EditPost() API will accept very limited data to only edit specific attributes of a post, if you didn't supply a category change then we would previously overwrite the original categories with the default cat. Fixes #22220 props nacin. git-svn-id: https://develop.svn.wordpress.org/trunk@22584 602fd350-edb4-49c9-b593-d223f7449a82 --- wp-includes/class-wp-xmlrpc-server.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wp-includes/class-wp-xmlrpc-server.php b/wp-includes/class-wp-xmlrpc-server.php index e15a747d9d..d59b3b0661 100644 --- a/wp-includes/class-wp-xmlrpc-server.php +++ b/wp-includes/class-wp-xmlrpc-server.php @@ -1213,7 +1213,7 @@ class wp_xmlrpc_server extends IXR_Server { $post_data = apply_filters( 'xmlrpc_wp_insert_post_data', $post_data, $content_struct ); - $post_ID = wp_insert_post( $post_data, true ); + $post_ID = $update ? wp_update_post( $post_data, true ) : wp_insert_post( $post_data, true ); if ( is_wp_error( $post_ID ) ) return new IXR_Error( 500, $post_ID->get_error_message() );