function set_future_post_option_on_future_status($new_status, $old_status, $post) { global $blog_id, $rt_wp_nginx_purger; $purge_status = array('publish', 'future'); if (!$this->options['enable_purge']) { return; } if (in_array($old_status, $purge_status) || in_array($new_status, $purge_status)) { $rt_wp_nginx_purger->log("Purge post on transition post STATUS from " . $old_status . " to " . $new_status); $rt_wp_nginx_purger->purgePost($post->ID); } if ($new_status == 'future') { if ($post && $post->post_status == 'future' && ($post->post_type == 'post' || $post->post_type == 'page' || isset($this->options['custom_post_types_recognized']) && in_array($post->post_type, $this->options['custom_post_types_recognized']))) { $rt_wp_nginx_purger->log("Set/update future_posts option (post id = " . $post->ID . " and blog id = " . $blog_id . ")"); $this->options['future_posts'][$blog_id][$post->ID] = strtotime($post->post_date_gmt) + 60; update_site_option("rt_wp_nginx_helper_global_options", $this->options); } } }