投稿が更新または公開されるたびに、メタデータを使用してカスタムクエリを実行したいです。
これらのイベントが発生したときに起動するためにfunctions.phpに入れることができるものはありますか?
save_post
アクションは、投稿が更新または公開されたとき(新しい投稿が挿入されたときも含む)に発生します。
<?php
add_action( 'save_post', 'wpse41912_save_post' );
function wpse41912_save_post()
{
// do stuff
}
投稿が編集されているときにだけ関数を起動したい場合は、edit_post
にフックできます。
投稿が下書きから公開に移動されたときに起動させたい場合は、transition_post_status
にフックできます。
あなたが使うことができるいくつかのアクションがあります 。例えば:
save_post
edit_post
publish_post
あまり使用されていませんが、 ポストステータス遷移フックもあります 。
edit_postフックはおそらく最良のフックです...投稿/ページが公開または更新されるたびに起動されるためです。 save_postはもう1つの実行可能なオプションです...コメントが更新されたときに起動する必要がないのであればもっといいかもしれません。
http://codex.wordpress.org/Plugin_API/Action_Reference
コーデックスのsave_postページには、投稿が保存されるたびに起動する関数の例があります。
http://codex.wordpress.org/Plugin_API/Action_Reference/save_post
カスタム投稿の更新/保存時にアクションを実行したい場合 -
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;
}
//if you get here then it's your post type so do your things....
}