Como ativar o modo de depuração (WP_DEBUG)
O que é o modo de depuração WP_DEBUG?
Ativar o debug no WordPress (a constante WP_DEBUG) significa ligar o modo de depuração definindo constantes no wp-config.php. Por padrão, o WordPress esconde os erros de PHP em produção por segurança, o que faz problemas aparecerem como tela branca, sem pista nenhuma. Com o WP_DEBUG ligado (e o WP_DEBUG_LOG), todo erro, aviso (warning) e notice passa a ser registrado em um arquivo de log, sem precisar ser mostrado ao visitante.
Como identificar
- O site mostra tela branca ou “There has been a critical error” sem dizer qual arquivo falhou.
- Você precisa achar qual plugin ou tema está causando um erro fatal e não há mensagem visível.
- Aparecem avisos de “Deprecated” ou “Undefined array key” intermitentes que você quer registrar.
- Um desenvolvedor pediu o conteúdo do wp-content/debug.log e o arquivo ainda não existe.
Como prevenir
- Use sempre WP_DEBUG_LOG com WP_DEBUG_DISPLAY false em produção, para depurar sem expor o site
- Desligue o WP_DEBUG e apague o debug.log assim que terminar o diagnóstico
- Em ambiente de staging, mantenha o debug ligado para flagrar avisos antes de subir para produção
Erros relacionados
Causa
WP_DEBUG vem definido como false no wp-config.php padrão de produção, escondendo os erros WP_DEBUG_LOG não está ativo, então nada é gravado em wp-content/debug.log WP_DEBUG_DISPLAY ligado em produção exibiria o erro ao visitante, então é deixado desligado e o erro some da vista A constante foi colocada depois da linha 'That's all, stop editing!', onde o WordPress já ignora Um plugin de cache ou de segurança sobrescreve as constantes de debug
Como resolver
- Abra o wp-config.php via FTP: conecte-se por FTP ou pelo gerenciador de arquivos da hospedagem e edite o wp-config.php na raiz do site.
- Ative o debug com log e sem exibir na tela: adicione as constantes ANTES da linha 'That's all, stop editing!'. Em produção, mantenha o DISPLAY como false para o erro ir só para o log:
define('WP_DEBUG', true); define('WP_DEBUG_LOG', true); define('WP_DEBUG_DISPLAY', false); @ini_set('display_errors', 0); - Reproduza o problema: abra a página ou execute a ação que gerava o erro. O WordPress grava a falha no log nesse momento.
- Leia o wp-content/debug.log: abra o arquivo wp-content/debug.log via FTP. A última entrada de 'Fatal error' aponta o arquivo e a linha do problema.
- Desligue o debug ao terminar: volte WP_DEBUG para false e apague o debug.log. Deixar o debug ligado em produção pode vazar caminhos do servidor para quem não deveria ver.
// wp-config.php — modo de depuracao seguro (antes de "That's all, stop editing!")
define( 'WP_DEBUG', true ); // liga o modo de depuracao
define( 'WP_DEBUG_LOG', true ); // grava em wp-content/debug.log
define( 'WP_DEBUG_DISPLAY', false ); // NAO mostra o erro ao visitante
@ini_set( 'display_errors', 0 ); // reforca: nada na tela em producao














