wojciechborowicz
Forum Replies Created
Viewing 1 replies (of 1 total)
-
Forum: Plugins
In reply to: [Modern Events Calendar Lite] Auto Delete Expired Events?Hello @macdoodle ,
Add below to functions.php file of your theme (or use it in a plugin)
it is a cron job scheduler, which will remove all expired events.(It will actually make them draft, but there’s commented out line for removing them in case you need)
register_activation_hook(__FILE__, 'wojciech_borowicz_mec_cron_job_schedule'); function wojciech_borowicz_mec_cron_job_schedule() { if (! wp_next_scheduled ( 'wojciech_borowicz_remove_expired_events_cron_job' )) { wp_schedule_event(time(), 'daily', 'wojciech_borowicz_remove_expired_events_cron_job'); } } add_action('wojciech_borowicz_remove_expired_events_cron_job', 'wojciech_borowicz_remove_expired_events'); function wojciech_borowicz_remove_expired_events() { $args = array( 'post_type' => 'mec-events', 'orderby' => 'date', 'order' => 'DESC', 'posts_per_page'=> '-1', ); $loop = new WP_Query( $args ); if( $loop->have_posts() ): $today = date('Y-m-d'); while( $loop->have_posts() ): $loop->the_post(); global $post; $endDate = get_post_meta($post->ID, "mec_end_date", true); if($today>$endDate && $endDate!=""){ //wp_delete_post($post->ID); $post = array( 'ID' => $post->ID, 'post_status' => "draft" ); wp_update_post($post); } endwhile; endif; }
- This reply was modified 3 years, 1 month ago by wojciechborowicz.
Viewing 1 replies (of 1 total)