Facebook Twitter Gplus LinkedIn E-mail RSS
Home Drupal Migrar do WordPress para Drupal
formats

Migrar do WordPress para Drupal

Publicado em 17/12/2014 por em Drupal

migrando-wordpress-para-drupal

Talvez um dia você precisa migrar o conteúdo de um site WordPress para um site Drupal. Nesse tutorial vou explicar passo a passo como podemos proceder com essa migração de dados.

As ferramentas que vou utilizar são basicamente: WordPress – Própria ferramenta de administração de conteúdo. Drupal – O módulo WordPress Migrate.

Passo 1) Exportando os conteúdos no WordPress – obter todos os posts do WordPress

Precisamos exportar os conteúdos de nosso WordPress. Vamos utilizar o “Exportar” padrão do WordPress.

Em seu painel de administração no site em WordPress, navegue em “Ferramentas” > “Exportar“.

Selecione “Posts” e clique em “Download do arquivo de exportação“:

Etapa a ser cumprida no antigo site em WordPress

Etapa a ser cumprida no antigo site em WordPress

Ao clicar em “Download do arquivo de exportação“, você vai baixar um arquivo em formato XML.

Passo 2) Instalando os módulos necessários em nosso drupal

Primeiramente precisamos instalar o módulo WordPress Migrate (https://www.drupal.org/project/wordpress_migrate)

Além do WordPress Migrate, precisaremos instalar os módulos que o WordPress Migrate necessita para funcionar:

  1. migrate
  2. migrate_ui
  3. wordpress_migrate

 Passo 3) Configurando nossa importação

Após instalar os módulos necessários teremos que configurar nossa importação. Navegue em “Administração” » “Conteúdo” » “WordPress migration” (admin/content/wordpress)

Nesse passo é possível verificar que temos a possibilidade de realizarmos uma importação de acordo com um site em WordPress (no qual teríamos que preencher alguns campos básicos como url, usuário, senha) ou a partir de um arquivo. Como no passo 1 exportarmos o arquivo para um arquivo XML, vamos utilizar a opção de “Importar de um arquivo“.

Caso você acesse essa página e se depare com o erro: “A private file system path must be configured to securely store your uploaded WordPress file.”, basta acessar as configurações de mídia (“Administração” » “Configurações” » “Mídia” » “Sistema de arquivos“) e configurar o caminho dos arquivos privados de acordo com o exemplo abaixo:

Configuração exigida para o sistema de arquivos

Configuração exigida para o sistema de arquivos

 

Selecione as opções:

  1. Importar de um arquivo
  2. Selecione o arquivo que geramos lá no passo 1
  3. Em “Mapear conteúdo” (Map content): Selecione “Converter posts do WordPress para: Página Básica” (nesse exemplo estamos trabalhando apenas com posts, você pode também trabalhar com páginas, além de poder selecione qual tipo de conteúdo você deseja realizar a importação). Também não vamos criar novos usuários, então na opção “Criar novos usuários..” clique em “Não“, e vamos atribuir todos os posts importados para o usuário “admin“.
  4. Na aba “Formato de texto” » “Campos de texto” (Text fields): Selecione “Full HTML

Ainda nas abas de configurações, é possível setar as taxonomias e as URL Alternativas, porém não vamos trabalhar nisso agora.

Configuração sugerida para a utilização do módulo WordPress Migrate

Configuração sugerida para a utilização do módulo WordPress Migrate

Após realizar as configurações necessárias, clique em “Importar um blog em WordPress” no final da página.

Ao final da importação, o Drupal vai te retornar com o feedback:

Feedback que o drupal exibe após a importação através do Módulo WordPress Migrate

Feedback que o drupal exibe após a importação através do Módulo WordPress Migrate

Pode-se verificar que temos 3 posts importados com sucesso.

Temos a opção de Rollback, onde podemos utilizar o Rollback ou Apagar os conteúdos importados.

Navegue em “Administração” > “Conteúdo” e verifique se os novos posts já estão importados:

Resultado da importação de conteúdo mostrando WordPress x DrupalResultado da importação de conteúdo mostrando WordPress x Drupal

Resultado da importação de conteúdo mostrando WordPress x Drupal

 

Versões utilizadas neste tutorial:

  1. Drupal: 7.34
  2. WordPress Migrate: 7.x-2.2
  3. WordPress: 4.0.1 (pt-BR)

 

Plus (problemas com imagens)

Essa versão do módulo WordPress Migrate (7.x-2.2), ainda não está migrando as imagens junto com o conteúdo, nosso conteúdo vem com a imagem, porém com o link do site antigo em WordPress.

Com isso, nossas imagens ficam linkando para o site antigo, e não é legal.

Resolvi utilizar uma forma não tão legal de corrigir isso:

  1. Pegar todos arquivos e diretórios dentro do diretório “upload” do WordPress (wp-content/uploads). Criar um diretório em nosso drupal (/sites/default/files/wordpress).
  2. Realizar um replace (via MySQL) na tabela dos conteúdos dos nodes, alterando http://meusiteantigo.com/wp-content/uploads para http://sitenovo.com/sites/default/files/wordpress
    Comando:
    UPDATE field_data_body SET body_value = REPLACE(body_value, ‘http://siteantigo/wp-content/uploads’,’http://sitenovo/drupalteste/sites/default/files/wordpress);
  3. Limpar o cache do drupal

Um outro problema que verifiquei, foram as imagens destacadas de cada post que tinha no WordPress. O caminho dessas imagens não são importadas. Verifiquei nas issues do módulo WordPress Migrate, e parece que para esses problemas, já estão sendo desenvolvido soluções.

Outra forma de importação

Uma outra forma de migrar o conteúdo, é utilizando o módulo feeds, o qual permite que você importe conteúdos/taxonomias/usuários, com a possibilidade de utilizar mapeamentos.

Para a utilização na importação de conteúdos vindos do WordPress utilizando o módulo feeds, sugiro que gere um arquivo XML ou CSV a partir do banco de dados de seu WordPress. Com isso, vai ser possível você gerar o arquivo para importação com campos adicionais (ex: a imagem destacada no wordpress) e mapeá-los em seu Drupal.

Tenho um tutorial que diz como “Importar Termos de Taxonomias para o Drupal 7” , onde explico como utilizar o módulo Feeds para realizar a importação de taxonomias.

Esse tutorial está explicando como importar taxonomias, porém você também pode utilizar o módulo para importar nodes.

 

Se você curtir o post, compartilha ou curte ai no face, se você teve dificuldade ou conseguiu usar, deixe seu comentário. Seu feeedback é de extrema importância.

 
 Compartilahr no Facebook Compartilhar no Twitter Comaprtilhar no Reddit Compartilhar no LinkedIn

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

© Adonai Diófanes | Wordpress | Drupal | Rio de Janeiro