Cron agendado intervalo através de opções de plugin?

Meu plugin configura um trabalho do CRON na ativação do plugin para executar após cada 5 minutos. Quero fornecer uma seção na minha página de configurações do plugin, onde o usuário pode especificar um intervalo. Como eu faria isso? Estou usando o filtro cron_schedules para adicionar uma programação CRON personalizada. Estou pensando em usá-lo para obter o valor da opção para o intervalo definido CRON do usuário. Esse é o jeito certo de fazer? Caso contrário, então, como devo fazê-lo?

Atualizar:

 //done in plugin activation if ( !wp_next_scheduled( 'my_custom_event' ) ) { wp_schedule_event( time(), 'everyminute', 'my_custom_event' ); } add_filter( 'cron_schedules', 'add_cron_schedule' ); add_action( 'my_custom_event', 'cron_data_update' ); //This is where I get the value set from the plugin settings function add_cron_schedule( $schedules ) { $my_settings = get_option( 'my-settings' ); $period = ( isset( $my_settings['my-cron-interval'] ) && $my_settings['my-cron-interval'] != '' ) ? $my_settings['my-cron-interval'] : 30; $schedules['everyminute'] = array( 'interval' => MINUTE_IN_SECONDS * $period, 'display' => __('My Schedule') ); return $schedules; } function cron_data_update() { //do something } 

Como você pode ver, estou obtendo o valor definido pelo usuário através da página de configurações do plugin. Se nada foi definido, eu uso 30 minutos como padrão. Esse é o jeito certo de fazer?

Solutions Collecting From Web of "Cron agendado intervalo através de opções de plugin?"