Pelo meu entendimento de como o WordPress atualiza o núcleo e os plugins, é que a cada 12 horas ele sai e procura por atualizações. Quando esse horário é definido? 12 horas da instalação inicial? Eu pergunto isso porque, usando o filtro de atualização automática do plug-in, add_filter( 'auto_update_plugin' );
teoricamente você só pode permitir que os plug-ins sejam atualizados entre determinados horários, mas se esse tempo não cair nessa janela de 12 horas, os plug-ins nunca serão atualizados.
Assim, deixando a pergunta no meu título, que é: Como alterar a frequência com que o WordPress procura atualizações ou como especificar um horário específico para a atualização automática?
Para os interessados, aqui está o filtro com o qual estou mexendo, verificando se é de segunda a sexta-feira, das 8h às 17h:
function maybe_update_plugins(){
date_default_timezone_set('Your Timezone Here');
$localAssoc = localtime(time(), true);
$update = false;
/***
/* tm_wday[0] = Sunday
/* tm_wday[6] = Saturday
***/
if(
$localAssoc['tm_wday'] > 0 && $localAssoc['tm_wday'] < 6 &&
$localAssoc['tm_hour'] > 7 && $localAssoc['tm_hour'] < 17
){
$update = true;
}
return $update;
}
add_filter( 'auto_update_plugin', 'maybe_update_plugins' );
Editar Como uma nota lateral pura, parece que esse filtro é executado sempre que um plugin é atualizado, várias atualizações de plug-in, várias execuções do filtro
fonte
As funções relevantes
wp_update_plugins()
ewp_maybe_auto_update()
são conectadas aos eventos wp-cron de mesmo nome, executando duas vezes por dia.Logicamente, a programação inicial começará a ser contada a partir do momento da primeira execução. Devido à implementação do wp-cron (não sendo o cron real e prejudicado pelas visitas ao site, e não ao relógio do servidor), ele também será "desviado" sempre que o wp-cron real disparar após o horário previsto.
As verificações de atualização de plug-in também são acionadas com mais frequência em determinadas áreas administrativas, como a lista de plug-ins (para que você tenha menos probabilidade de procurar informações obsoletas).
No topo da minha cabeça, não vejo uma maneira elegante de colocá-lo em um corredor de tempo específico. Mudar os horários é bem fácil, mas a conta da deriva não é bem assim.
Se isso for de alguma forma um requisito crítico, é melhor lidar com o cron real do servidor e a ferramenta externa para atualização real, como a funcionalidade de atualização do wp-cli ou o gerenciamento de plug-ins pelo Composer.
fonte
wp-cron
apenas algumas visualizações de página de administrador são acionadas ou também exibições de página normais? Obrigado!init
disparo gancho)