Расписание запуска сайта

Я использую плагин WP Maintenance Mode, пока редактирую свой сайт. Я хотел бы спросить, как я могу запланировать запуск своего веб-сайта или автоматически деактивировать плагин в определенное время. Заранее спасибо!


person user3142212    schedule 28.12.2013    source источник


Ответы (1)


Вот одна идея:

Я не уверен, что стоит деактивировать плагин, поэтому вместо этого вы можете обновить параметры плагина, чтобы отключить режим обслуживания во время запуска:

/**
 * Plugin Name: Automatic Launch for WP Maintenance Mode 
 * Plugin URI : http://stackoverflow.com/a/20817475/2078474
 * Description: Disable the maintenance mode at launch time, defined by the "countdown" date. Assumes a single site install - not multisite.
 */
! is_admin() && add_action( 'init', function(){

    $opt = get_option( 'wp-maintenance-mode' );

    if( FALSE !== $opt )
    {
         if ( isset( $opt['active'] ) && 1 === (int) $opt['active'] )
         {
             if ( isset( $opt['date'] ) )
             {  
                 // current timestamp - the blog local time 
                 $date_current = current_time( 'timestamp' );  // use time() for GMT

                // countdown date user input 
                $date_launch = DateTime::createFromFormat( 'd-m-Y H:i:s', $opt['date'] );

                // valid date input and it's launch time
                if(    FALSE !== $date_launch   
                    && $date_current > $date_launch->getTimestamp() )
                {
                    // update the options to disable the maintenance screen:
                    $opt['active'] = 0;
                    update_option( 'wp-maintenance-mode', $opt );
                    update_option( 'wp-maintenance-mode-msqld', 0 );
                }
            }
        }
    }
} );

если вы используете дату обратного отсчета:

дата обратного отсчета

Если вам нужна другая дата, вы можете заменить:

$date_launch = DateTime::createFromFormat( 'd-m-Y H:i:s', $opt['date'] ); 

с например:

$date_launch = DateTime::createFromFormat( 'd-m-Y H:i:s', '24-12-2014 10:11:00' );
person birgire    schedule 28.12.2013
comment
Вы можете создать новый файл плагина или скопировать его в свой файл functions.php в текущем каталоге темы. ps: проверки даты нуждаются в дополнительном тестировании. - person birgire; 28.12.2013
comment
Я протестировал его, и похоже, что он работает так, как ожидалось. Это сработало и для вас? - person birgire; 30.12.2013