Same issue here… no responses from developers? Used to work like a charm; now, as you state, Published don’t go to Drafts and revised dates aren’t behaving as such. Also noticed this snafu beginning around the turn of the year. Deleted the plugin from the list, reinstalled and reset — no effect on the incorrect outcomes.
Please advise, Electric Studio!
I believe the problem lies in the function used – wp_transition_post_status
in post.php this calls to transition_post_status to make the change, but there is no such function in wordpress, the function is actually called _transition_post_status. The other functions that wp_transition_post_status calls are ok, which explains why emails are sent.
This function is basically intended for stg else, it is for publishing posts, not for unpublishing. I see that the plugin used another function in the past, maybe this is when it stopped working?
I will test this on a test install…
Thanks for the follow-up, studioreforma, but I gave up. :-/
I went with similar plugin Post Expirator instead: http://wordpress.org/extend/plugins/post-expirator/ and it works perfectly.
just tested something, which proved my theory. If in this plugin settings I choose to switch the posts to “trash” rather than draft – it works. It uses another function, (wp_trash_post), so basically everything works fine except for the wp_transition_post_status function.
I could change this in my code easily, but it’s better if the plugin is changed so that it works for everyone…
Well that other plugin doesn’t work for me, it doesn’t do auto expiration, which is what we need.
Nice find — now if the plugin developers would only take notice? 🙂 Good work… I see what you mean by needing auto-expiration now. My post types were for coupon related items, so they needed to simply go to Draft at a certain date for potential future ‘recycling’ of coupons later in the year.
OHHHH studioreforma,nice, switched all to trash. If you could point me in the direction of code to edit that would be great. I’m quite happy to edit it, just to get it working again, rather then wait for the fix from the developers. Been too long.
you should use wp_update_post instead, the code is pretty much there, commented out