Erro Atualizando para WordPress 2.5 RC2
Breve intro..
Minha instalação do meu WordPress foi feita através do SVN (subversion), atualizando sempre pra última versão (trunk), do desenvolvedor. Isso é bom… na verdade, é ótimo. Acompanhei todo o processo de evolução do novo WordPress que está por sair. Mas… tudo tem seu preço.
Ontem resolvi, como de costume todos dias, atualizá-lo. Com uma linha de comando através de ssh (secure shell) no servidor é simples atualizar. Algo como: svn update blog
Problema
Logo após executar a linha de comando, qual não foi minha surpresa ao ver que simplesmente mais nada abria. A área de administração, página de nenhum post, categoria, principal… enfim, nada. Só aparecia o seguinte erro:
Call to a member function add_query_var() on a non-object in (..)/blog/wp-includes/taxonomy.php on line 165
Até então, não conseguia entender o erro, por mais que vasculhasse o arquivo ou procurasse no google. Deixei de lado. Fui no jogo do centenário do Galo de noite e depois de chegar em casa e tomar um bom banho fui tentar novamente buscar pela internet. Só tinha 2 resultados, e os dois em japonês (??) e as únicas palavras que apareciam usando o nosso alfabeto eram “simple tags”. Logo relacionei ao plugin (de mesmo nome) que uso. E aqui vai duas soluções.
Solução
Primeira: Foi o que eu fiz. Pensei numa forma de ‘desativar’ o plugin. Então o movi a pasta “simple-tags” para outra pasta no servidor: cd blog/wp-contents/plugins pra quem usa shell… ou simplesmente mova com seu cliente ftp. Logo que abrir a página de admin, ela já volta ao normal. O plugin automaticamente é removido da lista de plugins. Aí (depois de acessar a lista de plugins e não vê-lo mais) você pode mover ele de volta para pasta normal (plugins) porque ele deverá aparecer desativado.
mv simple-tags ../../simple-tags
Segunda: Essa eu encontrei agora pela manhã, quando várias outras pessoas tinham passado pelo mesmo problema e reportando o bug, encontraram soluções. Mas ainda não testei. Seria abrir o arquivo do plugin simple tags (wp-contents/plugins/simple-tags/simple-tags.php) e alterar o seguinte:
De:// Init ST
global $simple_tags;
$simple_tags = new SimpleTags();
Para:
// Init ST
function st_init() {
global $simple_tags;
$simple_tags = new SimpleTags();
}
add_action('init', 'st_init');
Porque, segundo o site, o problema ocorre na inicialização do plugin no wordpress.
Fica então essas duas soluções pra quem precisar e/ou cair de pára-quedas aqui.
apenas um comentário de teste!