Eseguire un'azione quando un post viene aggiornato/pubblicato
L'azione save_post
viene attivata quando un articolo viene aggiornato e/o pubblicato - incluso quando viene inserito un nuovo articolo.
<?php
add_action( 'save_post', 'wpse41912_save_post' );
function wpse41912_save_post()
{
// fai qualcosa
}
Se vuoi che le tue funzioni vengano attivate solo quando un articolo viene modificato, puoi agganciarti a edit_post
.
Se vuoi che venga attivato quando un articolo passa da bozza a pubblicato, puoi agganciarti a transition_post_status
.

save_post viene utilizzato quando un post viene creato o aggiornato. Se vuoi intervenire solo quando viene effettivamente pubblicato, dovresti usare publish_post. Se non fai questa distinzione, anche le bozze e altri stati verranno influenzati.

save_post viene attivato ogni volta che viene chiamato wp_insert_post
. Su tutto - bozze, ecc. Se vuoi evitare che venga chiamato durante i salvataggi automatici delle bozze, puoi aggiungere un controllo if( defined('DOING_AUTOSAVE') && DOING_AUTOSAVE ) return
nella funzione collegata a save_post
.

Ci sono diverse azioni che puoi utilizzare. Ad esempio:
save_post
edit_post
publish_post
- ecc.
Anche se meno utilizzati, esistono anche hook per le transizioni dello stato del post.

l'hook edit_post è probabilmente il migliore... poiché viene attivato ogni volta che un post/pagina viene pubblicato o aggiornato. save_post è un'altra opzione valida... forse migliore se non hai bisogno che venga attivato quando i commenti vengono aggiornati.
http://codex.wordpress.org/Plugin_API/Action_Reference
la pagina save_post nel codex contiene un esempio di una funzione che viene attivata ogni volta che un post viene salvato:
http://codex.wordpress.org/Plugin_API/Action_Reference/save_post

Se vuoi eseguire un'azione quando un custom post viene aggiornato/salvato -
add_action('save_post','save_post_callback');
function save_post_callback($post_id){
global $post;
if ($post->post_type != 'MY_CUSTOM_POST_TYPE_NAME'){
return;
}
//se arrivi qui allora è il tuo post type quindi fai quello che devi fare....
}
