Um arquivo de Log normalmente é a melhor maneira de localizar erros.
Por padrão, o WordPress vem com o “Log” desabilitado para que nada possa vazar e alguma pessoa má intencionada possa pegar informações sobre seu site.
Mas algumas vezes, nos deparamos com erros que simplesmente travam o WordPress e nada é executado, principalmente o Erro 500 que é muito comum quando fazemos alguma alteração nos arquivos.
Índice do conteúdo
Ativando o log
A maneira mais simples de ativar o Log no WordPress é acessando o arquivo wp-config.php que está na pasta raiz do seu WordPress.
Se você estiver utilizando WP Cli ou o Easy Engine, seu arquivo estará na raiz do seu domínio, ou seja /var/www/site.com.br/wp-config.php , ou seja, uma pasta antes do htdocs.
Bem, encontrado o arquivo, edite-o e coloque estas quatro linhas abaixo (são duas de comandos e duas de comentários).
// Habilita o Debug, geração de Logs - WordPressBrasil.com.br
define('WP_DEBUG', true);
// Salva as informações dos Logs em /wp-content/debug.log
define('WP_DEBUG_LOG', true);
Pronto, salve este arquivo e tente acessar novamente seu site.
Localizando o arquivo de Logs
Agora, para ver o que acontece, localize o arquivo debug.log que se encontra na pasta wp-content/debug.log
Nele você terá informações do erro que aconteceu, como por exemplo este abaixo para você se familiarizar melhor
[27-Dec-2018 19:43:01 UTC] PHP Warning: require_once(/var/www/site.com.br/htdocs/wp-content/themes/chic-lifestyle-child/inc/demo/class-demo.php): failed to open stream: No such file or directory in /var/www/site.com.br/htdocs/wp-content/themes/chic-lifestyle/functions.php on line 200
[27-Dec-2018 19:43:01 UTC] PHP Fatal error: require_once(): Failed opening required '/var/www/site.com.br/htdocs/wp-content/themes/chic-lifestyle-child/inc/demo/class-demo.php' (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/site.com.br/htdocs/wp-content/themes/chic-lifestyle/functions.php on line 200
Com base no arquivo acima, para identificar melhor:
[27-Dec-2018 19:43:01 UTC] – Data e hora da ocorrência do erro
PHP Warning: – Aviso do PHP. Normalmente o site não dá erro 500 por causa de ‘warnings’, mas pode ser o ponto inicial de um problema
PHP Fatal error: – Erro fatal. Aqui aconteceu realmente o erro
require_once() – Função na qual o erro ocorreu
Failed opening required – Falha ao abrir o arquivo
required ‘/var/www/site.com.br/htdocs/wp-content/themes/chic-lifestyle-child/inc/demo/class-demo.php’ – Nome do arquivo que era necessário e provavelmente não existia
in /var/www/site.com.br/htdocs/wp-content/themes/chic-lifestyle/functions.php on line 200 – Local que o erro ocorreu, no functions.php do tema ‘chic-lifestile’ na linha 200
Este aqui é só um exemplo. Você pode ter esquecido um ‘;’ no final de um comando, ou mesmo uma simples aspas que você esqueceu de fechar.
Em outros casos, poderá haver um erro em algum plugin que você perceberá pelo diretório listado, neste caso você pode remover o plugin ou mesmo simplesmente alterar o nome da pasta do plugin. Desta maneira, ele ficará desabilitado e o site voltará a funcionar normalmente.
O mais importante no caso é aprender a habilitar este log e conseguir uma direção a seguir para procurar seu erro.
Finalizando o Log
Após encontrar seu erro e resolver o problema, não se esqueça de desabilitar o Log, por questão de segurança mesmo…
Para isto, basta editar novamente o arquivo wp-config.php e comentar as linhas, ficando com as duas barras na frente dos comandos.
Desta forma, se precisar habilitar novamente, basta você tirar as duas barras que o log será ativado novamente.
// Habilita o Debug, geração de Logs - WordPressBrasil.com.br
//define('WP_DEBUG', true);
// Salva as informações dos Logs em /wp-content/debug.log
//define('WP_DEBUG_LOG', true);
Conclusão
Como dizia meu pai, mais importante que dar o peixe é ensinar a pescar, e isto que fiz aqui com vocês.
Aprendendo a trabalhar com arquivos de log, vocês irão resolver quaisquer problemas que encontrar por este mundão a fora.
E você, encontrou o erro? Conseguiu avançar com esta dica? Comente aqui embaixo.
Um abraço e até mais.