私はカスタム投稿のステータスと投稿のスケジュールについていくつかの研究をしてきましたが、質問がありました。投稿をfuture
からpublish
ではなくカスタム投稿ステータスにスケジュールすることは可能かどうかと思いました。私が求めている主な理由は、私がstream
というカスタム投稿タイプを持っていて、ユーザーが2つの投稿ステータスを選択できるカスタム公開メタボックスを作成したことです:online
とoffline
。将来の日付を設定した場合、ストリームの投稿がonline
ではなくpublish
に移行するようにしています。
私の考えは、WordPressがそれをonline
に設定しようとするたびに自動的にpublish
に遷移するよう投稿ステータスをフィルタリングすることでハイジャックすることです。それは実行可能な選択肢でしょうか?
これがひとつのアイデアです。
投稿ステータスを変更するには、future_to_publish
アクションを使用します。
add_action('future_to_publish', 'set_status_online_wpse_95701');
function set_status_online_wpse_95701( $post ) {
if ( $post && $post->post_type==="stream"){
$post->post_status="online"; // change the post_status
wp_update_post( $post );
}
}