いつも忘れて調べるので、最近使ったのをまとめます。
やりたかったのは特定の条件の記事が公開されたときに、特殊な処理をして、
非公開、削除になっても特殊な処理をしたいって感じです。
・publish_post
投稿が公開になったときに呼ばれます。
引数は投稿IDです。
// アクションの登録
add_action( 'publish_post' , 'pub_post_method');
funtion pub_post_method(ID){
// 記事のIDを使ってあれこれする処理
}
・deleted_post
投稿が削除された時に呼ばれます。
引数は投稿IDです。
// アクションの登録
add_action( 'deleted_post' , 'del_post_method');
funtion del_post_method(ID){
// 記事のIDを使ってあれこれする処理
}
でも、ゴミ箱にいれただけでは呼ばれない。
・transition_post_status
投稿のステータスが変更された際に呼ばれます。
引数は投稿IDです。
// アクションの登録
add_action( 'transition_post_status' , 'tran_post_method');
funtion tran_post_method(ID){
// 記事のIDを使ってあれこれする処理
}
投稿系の処理はこいつの中で、post_statusを見て、処理するのが一番いい気がします。
publish_postもdel_post_methodも使わくて済みました。
2.2以下だとないみたいです。
ついでに、クラスの関数を使いたい場合は下記のように。
// インスタンスを作っておく
$obj = new MyClass();
// アクションの登録
add_action( 'transition_post_status' , array($obj , 'tran_post_method'));
これで、MyClassのtran_post_method関数が呼ばれます。
LIGはWebサイト制作を支援しています。ご興味のある方は事業ぺージをぜひご覧ください。