Como mudar um blog WordPress de servidor e não perder tráfego de links

Desculpem-me os leitores que não gostam dos posts técnicos, sei que existem, mas uma das regras que gosto de seguir é se aprendo algo, compartilho por aqui.

Nos últimos dias, com o BlogueIsso! Blogs, tenho lidado como nunca com códigos e máquinas no que elas têm de mais chato, comandos, o que vem rendendo menos posts e boas horas de aprendizado. Uma das tarefas mais árduas foi mudar blogs de servidores e reorganizar estruturas e lógicas de navegação interna. O objetivo deste post é falar sobre o primeiro problema.

Mudar um blog WordPress de servidor é relativamente simples e o Codex tem um ótimo passo-a-passo sobre como fazer, não é o objetivo repeti-lo aqui. Algumas pessoas enfrentam erros na codificação do blog, o texto fica com a acentuação um tanto maluca, o Rodrigo Ghedin, no Como migrar seu blog para outro servidor, tem a solução. Este último problema enfrentei apenas na minha primeira mudança, na versão 2.0.4 do WP e de lá até aqui, nunca vi acontecer novamente à exceção do Inovavox, que precisou ser consertado “manualmente”.

Mudança e codificação ficam cobertas pelos dois artigos citados, mas eu tinha problemas mais específicos e todos refletiam minha necessidade dos links em outros blogs e sites não resultarem em erro 404 ou chegar a uma página diferente da linkada, ou seja, os links deveriam chegar ao lugar certo.

Qual era o problema?

  • eu precisava mudar este blog de blogueisso.com para blog.blogueisso.com;
  • mudar o BlogueIsso! Blogs (B!Blogs) que estava em blogueisso.net para blogueisso.com;
  • não perder os links enviados para blogueisso.com, internos ou externos.

Complicações: a nova instalação do B!Blogs, também WP, criaria uma estrutura de permalink que poderia gerar erro em links arquivados em outros sites. Vejam, eu não estava preocupado com indexação de mecanismos de busca, rapidamente atualizada com sitemaps no Webmaster Tools, ou resolvida com um redirecionamento 301 geral do site, impossível de fazer neste caso já que haveria um outro blog na mesma url, ou seja, um redireciomanento completo resolveria o problema do blog.blogueisso.com mas inviabilizaria a criação de um novo em blogueisso.com.

Em suma, eu precisava de duas soluções:

  1. alterar os links internos no banco de dados onde blogueisso.com se tornasse blog.blogueisso.com;
  2. redirecionar cada permalink, digamos “2008/02/titulodopost” do blogueisso.com para o blog.blogueisso.com.

Meu medo maior estava na segunda solução. Então, ao passo-a-passo:

1º Passo: mudar o blog de servidor

O Codex cobre.

2º Passo: corrigindo problemas de acentuação

Artigo no BlogAjuda cobre. Isso, claro, se houver algum problema com a acentuação.

3º Passo: mudando links internos

Todos os links para blogueisso.com devem se transformar em blog.blogueisso.com dentro da BD do blogueisso.com. Uma solução é abrir no bloco de notas ou qualquer outro editor de textos o .sql de backup e fazer as substituições, mas fiz de uma maneira que me pareceu mais rápida, via phpMyAdmin.

Abri a base e na aba SQL executei três comandos:

Para mudar a URL do blog, é o mesmo que usar a aba “Opções” no Painel de Controle (Dashboard).

UPDATE wp_options SET option_value = replace(option_value, 'http://blogueisso.com', 'http://blog.blogueisso.com') WHERE option_name = 'home' OR option_name = 'siteurl';

Mudar as URLs dos posts guardadas com identificações únicas na tabela wp_posts:

UPDATE wp_posts SET guid = replace(guid, 'http://blogueisso.com','http://blog.blogueisso.com');

Mudas as URLs no conteúdo de todos os posts:

UPDATE wp_posts SET post_content = replace(post_content, 'http://blogueisso.com', 'http://blog.blogueisso.com');

Pronto, internamente o problema está resolvido. Uma observação, eu nunca usei o “www” para fazer links internos, por isso não usei o “www.blogueisso.com” como texto a ser substituído. Se você usa, deve colocá-lo nas substituições acima.

Esta dica veio do My Digital Life.

4º Passo: redirecionar links antigos para o novo endereço…

… e permitir que uma nova instalação do WordPress funcione. Essa era a parte complicada e eu tinha algumas opções: criar um novo blog em blog.blogueisso.com e manter meu arquivo em blogueisso.com, eu não queria aceitar essa idéia (é tudo meu! é tudo meu!); instalar o BlogueIsso! Blogs em um diretório, como /blog, o que seria colocar em segundo plano um projeto maior em detrimento de um blog pessoal; esquecer tudo, deixar para lá e ir à praia; ou… fazer o que eu queria, direcionar link por link, mais de mil posts, via .htacess.

Mas antes de passar seis meses mexendo com redirecionamento 301, descobri Jamie e o plugin Redirection (a comunidade do WP é uma mãe). Nele você cria regras baseadas em sua estrutura de permalink para redirecionar todo o tráfego de um ponto à outro. O plugin deve ser instalado no blog que substituirá o antigo e as regras são criadas com regex. Funciona lindamente.

Qualquer dúvida, perguntas e respostas nos comentários.


Creative Commons License photo credit: ryancboren

Leia também

5 Comentário(s)

  1. Raphael Roale | 29 Fev, 2008 | Responda

    Camarada… você deve ter me poupado umas três semanas de pesquisas. Tava mesmo pensando em algo do gênero, mas desanimava com tanta informação espalhada. Parabéns, valeu o post.

    Só diz aí se os mecanismos de busca ficaram malucos depois disso.

  2. Raphael Roale | 29 Fev, 2008 | Responda

    Camarada… você deve ter me poupado umas três semanas de pesquisas. Tava mesmo pensando em algo do gênero, mas desanimava com tanta informação espalhada. Parabéns, valeu o post.

    Só diz aí se os mecanismos de busca ficaram malucos depois disso.

  3. Caramujo | 2 Mar, 2008 | Responda

    Ótimo post. Irei fazer isso no meu blog. Mas o processo inverso. Vou mudar de http://www.caramujo.org/blog para http://www.caramujo.org. Quando ia começar a pesquisar, achei isso aqui pelo linkk.

  4. Caramujo | 2 Mar, 2008 | Responda

    Ótimo post. Irei fazer isso no meu blog. Mas o processo inverso. Vou mudar de http://www.caramujo.org/blog para http://www.caramujo.org. Quando ia começar a pesquisar, achei isso aqui pelo linkk.

  5. Caramujo | 2 Mar, 2008 | Responda

    Ótimo post. Irei fazer isso no meu blog. Mas o processo inverso. Vou mudar de http://www.caramujo.org/blog para http://www.caramujo.org. Quando ia começar a pesquisar, achei isso aqui pelo linkk.

1 Trackback(s)

  1. 7 Mar, 2008: de Como mudar um blog WordPress de servidor e não perder tráfego de links | BlogueIsso! Blogs

Escreva seu Comentário

Fechar
Envie por e-mail