Как запустить функцию в определенное время?

У меня есть функция WordPress, которую я хочу запускать один раз в день в определенное время. Как мне это сделать, поскольку WP cron не может быть установлен на определенное время?

Понравился вопрос? Нужен ответ? Поддержите проект
WPAsk
Ответов: 2
  1. Will the Web Mechanic

    вы можете использовать wp_cron для указания времени:

    add_action( 'my_scheduled_event', 'prefix_my_scheduled_event' );
    /**
     * На хуке крона запустите функцию.
     */
    function prefix_my_scheduled_event() {
        // код
    }
    // установить часовой пояс PHP в UTC
    default_timezone_set( 'UTC' );
    // определить временную метку для запуска в первый раз.
    $timestamp = strtotime( '2013-12-14 16:20:00' ); 
    // установить интервал повторения - WP имеет три интервала по умолчанию: ежечасно, ежедневно и дважды в день
    $recurrence = 'daily';
    // определить хук для запуска
    $hook = 'my_scheduled_event'
    // вы можете передавать аргументы подключаемой функции, если это необходимо. этот параметр является необязательным:
    $args = null;
    // следующее запустит вашу функцию, начиная с времени, определенного timestamp и повторяя каждый раз
    wp_schedule_event( $timestamp, $recurrence, $hook, $args );
    

    445/5000

    Это упрощенный пример. Необходимо выполнить некоторый тип проверки, чтобы у вас не закончилась запланированная загрузка хуков, но она должна дать вам представление о том, как настроить ее на определенное время. Кроме того, необходимо понимать, что wp_cron запускается при загрузке страниц, поэтому, если на вашем сайте нет большого количества трафика, функция не будет срабатывать точно в указанное время. Однако для этого есть обходные пути.

  2. Ravi Barnwal

    Посмотрите следующий ресурс.

    http://codex.wordpress.org/Function_Reference/wp_schedule_event

Добавить ответ

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: