Notice: This is a discussion thread for comments about the SitePoint article, Scheduling Tasks in WordPress: a Plugin Developer’s Guide.
What experience have you had using WordPress’s scheduling API? Any tips you’d add?
Notice: This is a discussion thread for comments about the SitePoint article, Scheduling Tasks in WordPress: a Plugin Developer’s Guide.
What experience have you had using WordPress’s scheduling API? Any tips you’d add?
I recently added an “auto delete old log files” feature to one of my plugins. It took a little while to get my head around the API, but it wasn’t that bad for me.
In my “activate” I added
wp_schedule_event(time(), 'daily', 'er_cron_del_hook')
In my “deactivate”
wp_clear_scheduled_hook('er_cron_del_hook');
remove_action('er_cron_del_hook', 'mitt_er_cron_delete_logs');
add an action
add_action('er_cron_del_hook', 'mitt_er_cron_delete_logs');
and write the function
function mitt_er_cron_delete_logs()
{
$cron_del_limiter = get_option('er_do_cron_del');
if ( ($cron_del_limiter == 'month') || ($cron_del_limiter == 'week') )
{
$curr_time = time();
$cron_file_age = 31536000; // default 1 year should be way more than enough
if ($cron_del_limiter == 'month') $cron_file_age = 2678400;
if ($cron_del_limiter == 'week') $cron_file_age = 604800;
.......
// do file delete stuff if conditional tests pass
Great tutorial - Thankyou.
You could also hack php and use a GET post via Cpanel CRON