﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	severity	resolution	keywords	cc
19715	Can't Edit Draft Posting Date, using XML-RPC	jmartindf		"I’ve been seeing a weird workflow between !MarsEdit and Wordpress that’s been causing problems when I attempt to schedule future posts. A few days ago, I nailed down the exact workflow and the cause.

The general workflow is when taking a draft post and publishing it, from !MarsEdit, with a future date/time. Here’s the specific workflow that causes problems.

1. Create a new post (using the web interface)
1. Save Draft, from the web interface (don’t change the date/time at all, leave it at the default of Publish Immediately)
1. Open post (using Mars Edit)
1. Change publish date (using Post -> Edit Date)
1. Change status to Published
1. Send to server

After sending the post to the server, you’ll have a new post that was published immediately, not a new post scheduled for a future date.

If you create the new post using !MarsEdit (instead of the Wordpress web interface), you don’t have this problem. If you publish the post using the web interface (instead of !MarsEdit), you also don’t have this problem.

I tracked the problem down to wp_update_post in `wp-includes/post.php`. That function clears the `post_date` and `post_date_gmt` fields (from the XML-RPC interface) if all of the following are true:

* the post is a draft
* the `post_date_gmt` is '0000-00-00 00:00:00'
* there is no `edit_date` variable defined, in $postarr.

I experimented and determined that when draft posts are created from Wordpress’s web interface, the `post_date_gmt` is always set to '0000-00-00 00:00:00'. Because `wp-includes/class-wp-xmlrpc-server.php` never does anything to set `edit_date` in `$postarr`, it's not possible to change the post date until after the post has been published.

I created a patch to `wp-includes/class-wp-xmlrpc-server.php`, to set edit_date when the XML-RPC client sends a post date. I'm not sure if that's the best way to fix this problem, but it works for me.
"	defect (bug)	closed	normal		XML-RPC	3.2.1	normal	duplicate	has-patch	jalkut@…
