Exportando XML de instalação WordPress com muitos posts

Exportando XML de instalação WordPress com muitos posts

Ao migrar uma instalação WordPress com muitos posts, páginas ou custom post types, um problema que pode ser enfrentado é a falta de capacidade do servidor para processar a geração do XML, ou mesmo do servidor para o qual o conteúdo será movido de processar a importação deste XML.

Em ambos os casos, uma das melhores opções é particionar a exportação do arquivo XML em vários arquivos, separando a exportação de páginas, posts, custom post types, e se preciso, separando ainda por períodos (meses) cada um. Ou seja, ao invés de tentar gerar um único XML imenso, a ideia é tentar gerar múltiplos arquivos menores que ambos os servidores consigam lidar.

Arquivo parcial ainda grande, como resolver?

O WordPress permite que você exporte no máximo o conteúdo de um mês em um XML, porém mesmo em um mês dependendo da frequência de publicação de um site, você pode ter centenas ou milhares de publicações e o arquivo gerado ainda ser grande demais. Como lidar?

Utilizando o snippet abaixo é possível gerar um arquivo de exportação programaticamente, consumindo menos recursos (o arquivo que o servidor criar com este script terá mais posts do que ele é capaz de exportar pelo painel do WordPress – ainda não sei o por quê). Crie um arquivo na raiz da sua instalação WordPress, chamado de export.php e insira:

Acesse o endereço do seu site seguido de /export.php, pronto, ele irá gerar um arquivo wordpress-{data}.xml na raiz do seu servidor. Se ele gerar um arquivo XML em branco pedindo para você salvar no seu computador, apenas ignore e acesse o seu servidor e pegue o arquivo salvo que estará lá. Com esse método conseguimos exportar todas as publicações de um site com milhares de posts, sem necessidade de tentar exportar múltiplos arquivos por mês.

Bônus: Importando arquivos XML no WordPress com WP-CLI

O Rafael Funchal escreveu um artigo recentemente falando como importar os arquivos XML utilizando o WP-CLI, vale a pena conferir. Se você estiver utilizando WP-CLI, vale também tentar o comando wp export, no nosso caso infelizmente o conteúdo estava em um servidor sem WP-CLI nem acesso para instala-lo.

Allyson Souza

Tecnólogo em Jogos Digitais pela FATEC São Caetano do Sul, é Designer e Programador. Co-fundador da Haste Design, estúdio que desenvolve projetos diversos de design e web. Desenvolve com WordPress há cerca de 4 anos. Organiza os meetups da comunidade WP São Paulo e busca sempre que possível contribuir com a comunidade.

Deixe uma resposta

Fechar Menu
×
×

Carrinho