WordPress, página em Branco, debugada e resolvida

Standard

Gosto muito do WordPress, gosto mesmo, uso todos os dias e, de quanto em vez, até escrevo sobre ele. Porém, sempre tem um porém, me irrita essa mania de dar tela branca que este treco tem.

Você está lá… feliz e faceiro, testando novos plugins no seu blog e, de repente, sem mais nem menos. Pimba! Tenta entrar no admin e tudo que recebe é uma tela em branco, uma página sem nenhuma informação, sem nada, o vazio.
E ai, começa o inferno.

página em branco no wordpress

Por lloydsscreenies

Procure na internet, em português, em inglês, em coreano…. tudo que consegue são conselhos e mais conselhos de como renomear seu diretório de plugins, ou apagá-los, e começar tudo de novo.  Já fiz isso, inúmeras vezes mas, agora basta. Esta foi a última vez.

Uma hora de pesquisa e encontrei a função wp_redirect no  wp-includes/pluggable.php. Admito que poderia ter sido mais rápido de tivesse lido a droga do manual, online… em fim…

A wp_redirect é usada para redirecionar (duh!) urls e termina com uma função header e do php. Ocorre que esta função só consegue redirecionar a página se nenhum tipo de saída tiver sido executada anteriormente. Ou seja, basta um echo mal colocado em qualquer script carregado por qualquer plugin para que a wp_redirect não funcione e a header emita um erro que você não verá já que, por padrão, a maior parte dos hosts está com os erros de php desligados.

Para ver o erro e conseguir resolver o problema, coloquei três linhas de código antes da chamada header na wp_redirect:

error_reporting(E_ALL | E_WARNING | E_NOTICE);

ini_set(‘display_errors’, TRUE);

flush();

Com isso, foi possível ver os erros que a função header estava emitindo, e corrigir o código do plugin. Viva!!!

Outra solução seria colocar uma bosta de try na wp_redirect que emitisse uma merda de mensagem de erro e pronto. Nunca mais ninguém veria uma página em branco.

One thought on “WordPress, página em Branco, debugada e resolvida

  1. Renan

    Mas como você resolveu isso ?

    Porque estou com esse problema e não consigo entender o código… Não sei o que fazer me ajude

    Obrigado

Comments are closed.