Como corrigir atualização automática do WordPress que falha
O que é a atualização automática que falha?
O WordPress aplica atualizações em segundo plano: o agendador WP-Cron dispara o processo, o sistema baixa os arquivos novos e os grava sobre os antigos. Para isso, o PHP precisa ter permissão de escrita nos arquivos do site e um método de acesso ao sistema de arquivos. Quando a permissão é negada, o cron não roda ou a conexão com os servidores do WordPress.org falha, a atualização automática é abortada e o site fica numa versão desatualizada ou com um aviso de falha na tela de atualizações.
Como identificar
- Mensagem “The update cannot be installed because we will be unable to copy some files.” na tela de atualização.
- E-mail do WordPress com o assunto “An automatic update has failed” ou “Your site has been scheduled for an update”.
- A versão do núcleo, plugins ou temas continua antiga mesmo com a atualização automática ligada.
- A tela de atualização pede credenciais de FTP a cada tentativa, em vez de atualizar direto.
Antes de começar: Faça backup completo antes de mexer em permissões ou substituir arquivos do núcleo via FTP. Use FS_METHOD direct apenas quando o usuário do PHP for o dono dos arquivos; em hospedagens compartilhadas mal configuradas, isso pode expor arquivos a outros usuários do servidor.
Como prevenir
- Mantenha pastas em 755 e arquivos em 644, com wp-content gravável pelo usuário do PHP
- Configure um cron real no servidor apontando para o wp-cron.php em sites de baixo tráfego
- Monitore o espaço em disco e libere a saída para api.wordpress.org no firewall do servidor
Causa
- Permissões de arquivo erradas em wp-content ou nos arquivos do núcleo, bloqueando a escrita do PHP.
- WP-Cron desativado ou sem disparar, então a atualização agendada em segundo plano nunca roda.
- Falta de acesso direto ao sistema de arquivos, fazendo o WordPress pedir FTP a cada atualização.
- Conexão com api.wordpress.org bloqueada por firewall, impedindo o download dos arquivos novos.
- Espaço em disco esgotado no servidor, sem onde gravar os arquivos baixados da atualização.
Como resolver
- Ligue o modo de depuração: edite o wp-config.php para registrar o erro real da atualização no log, em vez do aviso genérico na tela:
define('WP_DEBUG', true); define('WP_DEBUG_LOG', true); define('WP_DEBUG_DISPLAY', false); - Force o método direto de arquivos: se o WordPress fica pedindo FTP, adicione a constante de método direto no wp-config.php para ele gravar os arquivos sem credenciais, quando a permissão permitir.
define('FS_METHOD', 'direct'); - Corrija as permissões: via FTP, ajuste as pastas para 755 e os arquivos para 644, e garanta que wp-content seja gravável pelo usuário do PHP. Permissão errada é a causa mais comum.
- Teste o WP-Cron: confirme se o cron está disparando. Se o site tem pouco tráfego, configure um cron real no servidor apontando para o wp-cron.php em vez de depender das visitas.
- Atualize manualmente: se a automática insistir em falhar, atualize pelo botão em Painel > Atualizações, ou via FTP substituindo as pastas wp-admin e wp-includes pela versão nova, sem tocar em wp-content.
PHP
// wp-config.php — destrava a atualizacao automatica.
// Coloque ANTES da linha "That's all, stop editing!".
define( 'FS_METHOD', 'direct' ); // grava arquivos sem pedir FTP
define( 'WP_AUTO_UPDATE_CORE', true ); // liga a atualizacao automatica do nucleo
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true ); // registra a falha real em wp-content/debug.log
Perguntas frequentes
Por que o WordPress pede FTP toda vez que tento atualizar?
Porque ele não detectou que pode gravar os arquivos diretamente e recorre ao FTP como alternativa. Adicionar define('FS_METHOD', 'direct'); no wp-config.php faz o WordPress gravar direto, desde que o usuário do PHP seja o dono dos arquivos do site.
Qual permissão de arquivo o WordPress precisa para atualizar sozinho?
Pastas em 755 e arquivos em 644, com a pasta wp-content gravável pelo usuário que roda o PHP. Permissão mais restritiva impede a escrita e aborta a atualização; permissão mais aberta, como 777, é desnecessária e insegura.
A atualização automática depende do WP-Cron?
Sim. O WP-Cron agenda e dispara a atualização em segundo plano, mas só roda quando alguém visita o site. Em sites de baixo tráfego ele pode não disparar a tempo. Configurar um cron real no servidor apontando para o wp-cron.php garante que a atualização aconteça.
Recebi um e-mail de An automatic update has failed. O que faço?
Esse e-mail avisa que a atualização em segundo plano não concluiu. Entre em Painel > Atualizações e tente atualizar manualmente. Se falhar de novo, ligue o WP_DEBUG_LOG para ver o erro real, que costuma ser permissão de arquivo ou falta de espaço em disco.
É seguro usar FS_METHOD direct?
É seguro quando o usuário do PHP é o dono dos arquivos do site, o caso da maioria das hospedagens modernas. Em servidores compartilhados mal configurados, onde vários sites rodam sob o mesmo usuário, vale confirmar com a hospedagem antes de forçar o método direto.
A atualização automática some com meu conteúdo se falhar?
Não. Uma falha de atualização não apaga o conteúdo, que fica no banco de dados. O risco é a atualização parar pela metade e deixar arquivos do núcleo incompletos. Por isso, mantenha backup e confirme a versão depois de cada atualização concluída.














