Escribo el siguiente código para ejecutar mi función todos los días a las 16:20 ..
Pero supongo que es el problema en el código ...
no funciona
Marca de tiempo de la época: 1427488800
28/03/2015 1:10:00 a.m.
if( !wp_next_scheduled( 'import_into_db' ) ) {
wp_schedule_event( time('1427488800'), 'daily', 'import_into_db' );
function import_into_db(){
////My code
}
add_action('wp', 'import_into_db');
}
time()
función no toma un argumento de entrada, prueba lastrtotime()
función o lastrftime()
función en su lugar, para crear marcas de tiempo personalizadas a partir de una cadena. Pero si ya tiene la marca de tiempo, no los necesita.Respuestas:
WP Cron se ejecuta cuando alguien visita su sitio web. Por lo tanto, si nadie visita, el cron nunca se ejecuta.
Ahora hay 2 soluciones:
https://support.hostgator.com/articles/specialized-help/technical/wordpress/how-to-replace-wordpress-cron-with-a-real-cron-job
Use un intervalo personalizado en
wp_schedule_event()
:y puedes ver estos tuts
http://www.nextscripts.com/tutorials/wp-cron-scheduling-tasks-in-wordpress/
http://www.iceablethemes.com/optimize-wordpress-replace-wp_cron-real-cron-job/
http://www.smashingmagazine.com/2013/10/16/schedule-events-using-wordpress-cron/
cron Wp personalizado
http://codex.wordpress.org/Plugin_API/Filter_Reference/cron_schedules
http://www.smashingmagazine.com/2013/10/16/schedule-events-using-wordpress-cron/
http://www.viper007bond.com/2011/12/14/how-to-create-custom-wordpress-cron-intervals/
http://www.sitepoint.com/mastering-wordpress-cron/
https://tommcfarlin.com/wordpress-cron-jobs/
http://www.paulund.co.uk/create-cron-jobs-in-wordpress
cron linux
http://www.cyberciti.biz/faq/how-do-i-add-jobs-to-cron-under-linux-or-unix-oses/
http://www.thesitewizard.com/general/set-cron-job.shtml
http://code.tutsplus.com/tutorials/scheduling-tasks-with-cron-jobs--net-8800
búsqueda de Google
fuente
En lugar de time () , use la función strtotime () para que pueda especificar la hora del día; usará la fecha de hoy con la hora que especifique. Entonces en tu caso:
El uso en la
wp_schedule_event
función se vería así:fuente
Bueno, 1427488800 se resuelve hasta el 27 de marzo de 2015, por lo que su evento aún no está configurado para comenzar.
Además, tenga en cuenta que los eventos de WP programados solo se dispararán si alguien visita el sitio en ese momento.
fuente
Este código me funciona, creo que está más cerca de la pregunta original. Desea obtener el tiempo UNIX + zona horaria para cuando desea que se ejecute. Una vez que el cron se ejecuta y se elimina de WP, se recrea en el momento que especifique.
En el siguiente ejemplo, lo tengo trabajando para AEST (GMT + 10) @ 6AM cada mañana. Así que lo estoy programando para GMT 20:00 cada día.
fuente