I can hook custom function to each of trash_post
, edit_post
, private_to_publish
etc. to meet some of my requirements, but I need also to check for more possible transitions like ‘pending to draft’, ‘private to draft’ and so on.
Something similar to this inexistent function:
if( post_status_changed($post_id) ) {
my_custom_function();
}
1
See this Codex page. In general the hook is {old_status}_to_{new_status}
. (Untested) but in your case, the hook would be pending_to_draft
:
add_action('pending_to_draft','wpse45803_pending_to_draft');
function wpse45803_pending_to_draft($post){
//Do something
}
You might want to look up the wp_transition_post_status
function. You could also use the hook: transition_post_status
add_action('transition_post_status','wpse45803_transition_post_status',10,3);
function wpse45803_transition_post_status($new_status,$old_status,$post){
//Do something
}