関西食育デザイン

関西の食育デザイナーによる技術ブログ

予約投稿で更新日が過去になってしまう問題の修正解決法

Wordpressで予約投稿をすると更新日時が投稿日時より前になってしまいます。

テンプレート側で更新日時と投稿日時を比較して新しい方を表示するような処理をしても良いのですが、結局はmetaなどで更新日時が表示されてしまうのであまり意味がありません。

 

そこで、予約投稿時に更新日も投稿日時と揃えてしまえば良いのでは・・・という事でコードを残しておきたいと思います。

 

function.phpへ以下のコードを追加で、予約から公開になった時点で更新日を更新します。

 

//
// 予約投稿の更新日時を投稿日時と同じにする処理
//
function future_to_publish_modified( $new, $old, $post ) {
    if ( $post->post_type == 'post' && $new == 'publish' && $old == 'future' ){
		remove_filter('content_save_pre', 'wp_filter_post_kses');
		wp_update_post(array('ID'=>$post->ID));
	}
}
add_action( 'transition_post_status', 'future_to_publish_modified', 10, 3 );