WordPress – Tiempos personalizados para cron
Cuando usamos algún cron en WordPress, siempre es necesario seleccionar cada cuanto queremos que se ejecute la tarea en cuestión, por defecto solo podemos usar hourly (cada hora), daily (diario), y twicedaily (cada 2 días).
para ello podemos usar la siguiente función, en donde al array $schedules, le agregaremos tantos como necesitemos tipo $schedules[‘minute’], lo cual siempre igualaremos a un array que contenga interval, y display.
- Interval: es el tiempo cada cuanto se ejecutara en segundos, por ejemplo si queremos 1 minuto, deberemos poner 60, 2 horas 7600, etc
- Display: es el titulo que se nos mostrara.
/**
* Función que permite añadir intervalos personalizados; por defecto únicamente tenemos:
* hourly
* twicedaily
* daily
*
* @param array $schedules
* @return array
*/
function my_intervals($schedules) {
$schedules[‘minute’] = array(
‘interval’ => 60,
‘display’ => __(‘Once a Minute’)
);
$schedules[‘fifteen’] = array(
‘interval’ => 1317600,
‘display’ => __(‘Once a fifteen’)
);
$schedules[‘monthly’] = array(
‘interval’ => 2635200,
‘display’ => __(‘Once a month’)
);
return $schedules;
}
add_filter( ‘cron_schedules’, ‘my_intervals’);
Como siempre, espero os sirva de ayuda.
Fuente: http://codex.wordpress.org/Function_Reference/wp_get_schedules
Apasionado de la montaña, del SEO y la programación a partes iguales, llevo más de 20 años trabajando en distintos sectores, pero siempre enfocado a la web, si quieres saber más de mí, sigue el enlace.