A maioria dos erros do WordPress vem de conflito de plugin, limite de memória PHP, permissões de arquivo erradas ou arquivo corrompido (.htaccess, wp-config.php). Antes de corrigir, faça backup, ative o WP_DEBUG e identifique a mensagem exata.
Site fora do ar é dinheiro parado. E o pior dos erros do WordPress raramente mostra a causa — só uma tela branca, um 500 seco ou um “erro ao estabelecer conexão”. Este guia é o mapa: como diagnosticar qualquer erro, o fix direto dos mais comuns, e o sinal honesto de quando o problema não é você — é o servidor.
Antes de mexer: 3 passos que salvam o site
Pressa quebra site. Antes de qualquer correção:
- Faça backup de arquivos e banco de dados. Sempre. É a diferença entre um susto e um prejuízo.
- Ative o modo de depuração. No
wp-config.php, antes de/* That's all, stop editing! */:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true ); // grava em wp-content/debug.log
define( 'WP_DEBUG_DISPLAY', false ); // não expõe o erro ao visitante
- Teste em staging, não em produção. Se o host oferece ambiente de teste, replique o erro ali primeiro.
Como diagnosticar qualquer erro do WordPress
Antes de decorar fixes, siga o fluxo. Ele isola a causa em minutos:
- O site abre? Não → é erro fatal (branco, 500, banco). Sim, mas quebrado → CSS/JS ou plugin.
- O
wp-adminabre? Se o painel funciona e só o site quebra, o problema é tema/plugin ou.htaccess. - Qual a mensagem? Consulte o
debug.logou o log de erros do servidor. Sem mensagem (tela branca) → quase sempre PHP fatal ou memória. - Isole: desative todos os plugins (renomeie
wp-content/plugins). Voltou? Reative um a um até achar o culpado. Não voltou? Troque para um tema padrão (Twenty Twenty-*). - Ainda quebrado com tudo desativado? O problema é servidor/host — pule pra seção final.
Ferramenta-chave: WP-CLI resolve a maioria disso por linha de comando (
wp plugin deactivate --all,wp theme activate), sem depender do painel.
Erros de tela e execução
Tela branca da morte (WSOD)
Sintoma: página totalmente branca, sem mensagem, front-end e/ou admin.
Causa-raiz: erro fatal de PHP — quase sempre conflito de plugin, tema quebrado ou memória esgotada.
Fix rápido: no WordPress 5.2+, cheque o e-mail do admin — o modo de recuperação envia um link. Sem e-mail, ative o WP_DEBUG acima e recarregue para ver o erro real. Persistindo, renomeie wp-content/plugins para plugins_old via FTP; se o site voltar, o culpado é um plugin — reative um a um.
Guia completo: tela branca da morte no WordPress.
Erro 500 Internal Server Error
Sintoma: “500 Internal Server Error” genérico, sem detalhe.
Causa-raiz: .htaccess corrompido, memória PHP estourada, versão de PHP incompatível ou plugin com erro de servidor.
Fix rápido: renomeie o .htaccess da raiz para .htaccess_old e recarregue. Voltou? Vá em Configurações → Links permanentes e clique em Salvar para gerar um .htaccess limpo. Se não, aumente a memória (abaixo) e desative plugins.
Memória PHP esgotada
Sintoma: “Allowed memory size of X bytes exhausted” ou tela branca em páginas pesadas.
Causa-raiz: o site ultrapassou o limite de memória do PHP.
Fix rápido: no wp-config.php, aumente o limite:
define( 'WP_MEMORY_LIMIT', '256M' );
Se não resolver, o limite real está no servidor (php.ini / host) — é onde escalar.
Erros de banco e conexão
Erro ao estabelecer conexão com o banco de dados
Sintoma: “Error establishing a database connection” — site e admin totalmente fora.
Causa-raiz: credenciais erradas no wp-config.php, banco sobrecarregado/fora do ar ou tabelas corrompidas.
Fix rápido: confirme que DB_NAME, DB_USER, DB_PASSWORD e DB_HOST no wp-config.php batem exatamente com o que o host configurou. Corretos e ainda falha? O banco pode estar fora (fale com o host) ou corrompido — repare com:
define( 'WP_ALLOW_REPAIR', true );
Depois acesse seudominio.com/wp-admin/maint/repair.php e remova a linha ao terminar.
Erros HTTP (403 / 404 / 429 / 502 / 504)
404 em todos os posts (mas a home abre)
Sintoma: home funciona, todos os posts/páginas dão 404.
Causa-raiz: estrutura de links permanentes corrompida ou .htaccess sem as regras de rewrite.
Fix rápido: vá em Configurações → Links permanentes e clique em Salvar alterações (sem mudar nada) — isso regenera as regras. Persistindo, confirme que o .htaccess tem o bloco # BEGIN WordPress e que o mod_rewrite está ativo.
403 Forbidden
Sintoma: “403 Forbidden — você não tem permissão de acessar”.
Causa-raiz: permissões de arquivo/pasta erradas, .htaccess restritivo ou plugin de segurança bloqueando.
Fix rápido: confirme permissões — pastas 755, arquivos 644. Renomeie o .htaccess para testar. Se um plugin de segurança (firewall) estiver bloqueando seu IP, desative-o via FTP.
Erros de conteúdo e operação
Modo de manutenção travado
Sintoma: “Manutenção programada. Volte em um minuto” que nunca sai.
Causa-raiz: uma atualização foi interrompida e deixou o arquivo .maintenance na raiz.
Fix rápido: conecte por FTP, delete o arquivo .maintenance da raiz do site. Recarregue — o site volta na hora.
Posts agendados não publicam (missed schedule)
Sintoma: posts agendados ficam presos como “agendado” e não publicam.
Causa-raiz: o wp-cron.php não dispara — comum em sites de baixo tráfego ou com cron desativado.
Fix rápido: desative o cron virtual e use um cron real do servidor. No wp-config.php:
define( 'DISABLE_WP_CRON', true );
Depois configure um cron job no host chamando wp-cron.php a cada 5–15 minutos.
Imagens não carregam ou aparecem quebradas
Sintoma: imagens somem, viram ícone quebrado, especialmente após migração.
Causa-raiz: URLs antigas no banco (após trocar de domínio) ou permissões erradas em wp-content/uploads.
Fix rápido: confirme permissões 755 em uploads. Após migração, atualize as URLs no banco com o WP-CLI:
wp search-replace 'https://dominio-antigo.com' 'https://dominio-novo.com' --skip-columns=guid
Segurança: quando “erro” é invasão
Nem todo “erro” é bug. Redirect para site estranho, admin que você não criou, spam em japonês no Google ou aviso “este site pode ser perigoso” no Chrome não são falhas de configuração — são sinais de malware. Se for o caso, o fluxo é outro: diagnóstico e remoção. Veja o guia dedicado: como identificar malware no WordPress.
Quando NÃO é você (é o host/servidor)
Ponto honesto que os tutoriais evitam. Se o erro persiste com todos os plugins desativados, tema padrão ativo e .htaccess regenerado, o problema não está no seu WordPress. Provavelmente é:
- Versão de PHP incompatível (muito antiga ou nova demais para um plugin)
- Limite de recursos do plano de hospedagem estourado (memória, CPU, processos)
- Banco de dados fora do ar ou sobrecarregado no servidor
- Configuração do servidor (
php.ini, limites de upload, timeouts)
Como confirmar: o log de erros do servidor (no painel do host) mostra o erro de baixo nível. Com ele em mãos, o suporte da hospedagem resolve rápido — ou é hora de considerar uma hospedagem melhor. Quando o diagnóstico exige acesso ao servidor, versão de PHP e configuração fina, é o tipo de trabalho que a Pixelize faz no serviço de WordPress Specialist e na manutenção contínua.