quinta-feira, 14 de maio de 2015

Wordpress - Trabalho direto com o banco de dados

Em 2013 trabalhei em um projeto que consistia de migrar o conteúdo de um sistema feito em Xoops para WordPress.
Não sou um grande entendido de ambos, por isso, releve se eu falar besteira.

O Xoops conheci bem pouco, mas pareceu ser um CMS bem prático que permite até um completo leigo construir um site razoável. Porém, a versão que o cliente usava (não lembro qual era exatamente) tinha várias falhas de segurança já descobertas - nem preciso falar que estavam fazendo a festa no servidor dele - e não dava pra atualizar. Haviam customizações em vários pacotes e não dava para "simplesmente" atualizar o Xoops para uma versão mais nova (no caso da versão dele, atualizar direto não funcionava direito). Então o cliente preferiu migrar tudo para outra ferramenta fácil de usar e customizável. O escolhido foi o WordPress. Que é um projeto muito maior, mais estável, com muito mais suporte e tudo mais.



Quando migrei era algo em torno da versão 3.1
Quanto ao WordPress, acho que não preciso falar muito sobre ele. Muito famoso e usado. Bem prático e simples de configurar. Porém, não é tão simples assim migrar os dados de uma ferramenta bem diferente diretamente para ele. Fora isso, havia conteúdo customizado para migrar também. Como uma montanha de álbuns de fotos.

Ambos estavam usando MySql e a migração, basicamente, foi feita utilizando queries SQL e copiar e colar as imagens de álbuns. As consultas que usei foram estas que salvei neste link aqui. Não sei explicar muito bem todas as coisas que fiz, pois já faz um bom tempo. Mas as deixo aí pois podem ser de alguma valia pra alguém que tenha que encarar algum problema parecido. Procurei em meus arquivos e, infelizmente, não salvei todas as fontes que consultei para fazer essa migração.

Técnica infalível pra desenvolvimento
Basicamente, dividi a migração em vários arquivos para migrar cada tipo de conteúdo separadamente. Comecei pelos usuários, permissões de usuários, posts, daí em diante.
Um dos pacotes extras/customizados de que tenho materiais e fontes é a migração do MyAlbum do Xoops para o WP Photo Album Plus (WPPA). A primeiro ver parecia terrível, mas foi feito.

Levou mais de dois meses pra terminar. Nisso inclui customizar o template para os gostos do cliente, bugs, etc. Como teve muita coisa que tive que descobrir na raça por não encontrar em canto nenhum as informações, novamente deixo o arquivo aqui. Infelizmente, fiquei muito tempo sem trabalhar com WordPress - sem postar aqui também - e esqueci grande parte, mas se eu continuar demorando, esse conteúdo pode se perder completamente. Sem falar que vários dos sites que consultei nem existem mais.

Outro problema em que esbarrei ao fazer essa migração, foi em desativar as atualizações de plugins. Customizamos alguns plugins e não queríamos que o WordPress ficasse torrando com pedidos disso. Para isso, é só adicionar este código e configurar o nome do plugin a ser ignorado. Ao menos era no WP 3.1. Espero que ainda funcione:

add_filter('site_transient_update_plugins', 'dd_remove_update_nag');
function dd_remove_update_nag($value)
{
    unset($value->response[ plugin_basename(__FILE__) ]);
    return $value;
}


Bem, tem bastante materiais úteis nos links abaixo, se precisar de algo e não souber ler em inglês, avisa que eu traduzo e posto no blog.
Por hoje é só.

PS: assim que terminar de esvaziar o baú de velharias, vou voltar a postar conteúdos mais próximos do que estou fazendo atualmente.

Fontes:
Query Posts Widget, List All Users in WP, WPPA, WPPA - SEO friendly permalinks, Disable Update Notifications, Disable Update Notifications 2, Remove Update Checks, Making Posts Scheduled in the future show up




Um comentário: