Ativar o modo de manutenção do WordPress sem um plug-in

Saiba como usar a função interna que é acionada sempre que fazemos as atualizações rotineiras de plug-ins e temas.

Existem diversos plug-ins para o WordPress que nos ajudam a colocar uma tela “em breve” ou “em manutenção” para quando queremos mudar alguma coisa no nosso sítio e sem que os usuários recebam mensagens aleatórias ou tentem algo enquanto se está fazendo a atualização.

O que poucos sabem, no entanto, é que o WordPress já tem essa função embutida no seu núcleo, função essa que é acionada sempre que fazemos as atualizações rotineiras de plug-ins e temas.

Penso que essa é a melhor escolha para quem não quer adicionar mais um penduricalho na sua instalação WP, ao mesmo tempo que se tem uma funcionalidade simples de usar e eficaz.

entendendo o arquivo .maintenance

Primeiramente, é preciso criar um arquivo chamado .maintenance no diretório-raiz da instalação WordPress. É a mesma pasta do arquivo wp-config.php. (O ponto antes do nome do arquivo significa que ele deve ser considerado um arquivo oculto.)

Dentro deste arquivo, vamos adicionar a seguinte linha:

<?php $upgrading = time(); ?>

A variável $upgrading contém uma estampa de tempo que define o período em que o WP estará em modo de manutenção.

Na verdade, o WordPress faz uma verificação (que está em wp-settings.php) de dois passos para acionar o modo de manutenção:

1) O arquivo .maintenance está no diretório-raiz?

2) A condição a seguir é verdadeira?

Hora atual - $upgrading < 10 minutos

Como estabelecemos que $upgrading é sempre a hora atual, ou seja, a condição é sempre verdadeira, o WordPress ficará em modo de manutenção até que se apague o arquivo.

Isso nos leva a outra funcionalidade: acionar o modo de manutenção apenas por um período determinado.

Estudando a fórmula acima, entendemos que $upgrading deverá ter a hora que queremos parar o modo de manutenção MENOS 10 minutos. Ou seja, para ativar durante 40 minutos,  precisamos especificar a hora atual MAIS 30 minutos (40 menos 10):

<?php $upgrading = time() + (30 * 60); /* 30 vezes 60 segundos */ ?>

Usando esta opção, após o período especificado, o WordPress voltará ao ar, mas será mostrada uma mensagem: “A atualização do WordPress falhou — tente realizar atualização novamente” até que se apague o arquivo .maintenance.

A menos que se tenha o período pré-determinado (o que normalmente não acontece), provavelmente o primeiro método será o mais indicado para tua aplicação.

Usar um plug-in certamente é o mais fácil para os neófitos, mas poder configurar o modo de manutenção manualmente é uma boa maneira de aprender um pouco mais sobre o WordPress.