私は現在ワードプレスのプラグインに取り組んでいます。プラグインには、投稿が作成、編集、または削除されるたびに、その投稿のデータで更新されるデータベース テーブルが含まれています。このテーブルの列の 1 つは「post_status」で、投稿のステータスが変更されるたびに更新する必要があります。今、私はこのコードを使用しています:
function filter_transition_post_status( $new_status, $old_status, $post ) {
global $post;
global $wpdb;
$wpdb->query(" UPDATE my_table SET post_status='$new_status' WHERE post_id=$post->ID");
}
add_action('transition_post_status', 'filter_transition_post_status', 10, 3);
「投稿の編集」ページ内で投稿ステータスを変更すると、上記のコードは正常に機能します。投稿のステータスを変更すると、テーブルでも変更が発生します。ただし、「クイック編集」モードを使用して投稿のステータスを変更したり、複数の投稿を一括変更したりすると、コードが機能しません。私のテーブルでは変更は行われません。この問題を解決するための助けをいただければ幸いです。ありがとうございました