Quero exportar todas as categorias do Wordpress (sem postagens, apenas categorias) de um blog para outro. Como eu posso fazer isso ?
Quero exportar todas as categorias do Wordpress (sem postagens, apenas categorias) de um blog para outro. Como eu posso fazer isso ?
Respostas:
Essa resposta é essencialmente a mesma que a de Ünsal, mas eu gostaria de elaborar um pouco porque, apesar de estar certa, a resposta dele não me ajudou (eu estava apenas tentando lembrar o que havia feito no passado, eu deveria ter lido a resposta dele. com mais cuidado e eu teria descoberto, mas acho que para outros uma descrição completa seria útil).
Para exportar a hierarquia completa da categoria, você precisa exportar "Todo o conteúdo"
Qualquer outra opção não fornecerá os dados completos (por exemplo, a exportação de uma postagem com todas as categorias marcadas funciona principalmente, mas você perde todos os dados de ascendência / hierarquia sobre taxonomias hierárquicas).
Quando você exporta "Todo o conteúdo", o arquivo resultante possui uma seção com dados sobre seus termos. Se você olhar através do arquivo, deve ser fácil encontrá-lo, depois dos autores e antes dos "itens" (ou seja, postagens).
Você pode simplesmente importar e excluir o conteúdo, se for uma opção *
A importação do arquivo completo replicará perfeitamente a hierarquia da taxonomia, mas obviamente também importará todas as páginas e postagens. Se não houver muitos, considere excluí-los manualmente. Não levará muito tempo se você fizer isso em massa e houver menos de centenas (lembre-se de que você pode usar as Opções de tela na tela Editar postagens para mostrar mais do que o padrão e, portanto, editar em massa mais de uma vez).
Se você tiver muito conteúdo para remover tudo, precisará editar o arquivo WXR manualmente para remover tudo, exceto os termos que deseja manter.
Editando o arquivo WXR para remover o conteúdo
Isso pode ser um pouco complicado, mas, na verdade, se você observar o conteúdo do arquivo, não é tão difícil descobrir o que cada elemento faz. O XML é como HTML com tags, portanto, o principal a ter cuidado é que você não exclui uma tag de fechamento enquanto deixa a tag de abertura etc.
Você verá que existem de um a três tipos de definições de termos no WXR, um tipo para categorias, um para "tags" e outro para "termos". "Taxonomias personalizadas" usam termos, enquanto categorias e tags antiquados têm seu próprio formato especial.
EXEMPLO DE CATEGORIA
<wp:category><wp:term_id>8880</wp:term_id><wp:category_nicename>runner-up-proposals</wp:category_nicename><wp:category_parent>second-round-proposals</wp:category_parent><wp:cat_name><![CDATA[Runner-up Proposals]]></wp:cat_name></wp:category>
EXEMPLO DE TAG
<wp:tag><wp:term_id>122</wp:term_id><wp:tag_slug>ave-maria</wp:tag_slug><wp:tag_name><![CDATA[Ave Maria]]></wp:tag_name></wp:tag>
EXEMPLO DE TERMO DE TAXONOMIA PERSONALIZADO
<wp:term><wp:term_id>8579</wp:term_id><wp:term_taxonomy>gv_tools</wp:term_taxonomy><wp:term_slug>digital-video</wp:term_slug><wp:term_parent></wp:term_parent><wp:term_name><![CDATA[Digital Video]]></wp:term_name></wp:term>
Portanto, o que você deseja fazer é remover todo o conteúdo que não seja essas tags de categoria / tag / termo do arquivo WXR. Ou seja, as tags wp: author que vêm antes e as muitas tags de itens que vêm depois. Mais importante: não remova as tags de fechamento / canal e / rss na parte inferior! Sem eles, o XML não será validado.
Obviamente, você testará os resultados da importação do arquivo editado antes de usá-lo em um site ativo. Tente importá-lo para uma nova instalação localmente e veja se ele falha completamente. Em seguida, verifique a tela de listagem de categorias em wp-admin e verifique se tudo está exatamente como o esperado.
Boa sorte!
Resolvi esse problema com 2 consultas.
Esta não é a melhor maneira, suponho, mas com certeza não é a mais segura . Além disso, pressupõe que você esteja trabalhando no mesmo banco de dados (se esse não for o caso, é possível exportar facilmente a consulta e depois importar para outro banco de dados).
Eu usei em uma instalação vazia do wordpress:
1 - Importar os termos da categoria:
INSERT INTO newwp_terms
SELECT te.*
FROM oldwp_terms te
JOIN oldwp_term_taxonomy ta
ON te.term_id = ta.term_id
WHERE ta.taxonomy = 'category'
;
2 - Importar relacionamentos e descrições de categorias
INSERT INTO newwp_term_taxonomy
SELECT term_taxonomy_id,term_id,taxonomy,description,parent,0
FROM oldwp_term_taxonomy ta
WHERE ta.term_taxonomy_id IN
(
SELECT ta2.term_taxonomy_id
FROM oldwp_terms te
JOIN oldwp_term_taxonomy ta2
ON te.term_id = ta2.term_id
WHERE ta.taxonomy = 'category'
)
;
[A] de qualquer maneira newwp_
se refere à tabela na qual você deseja importar, enquanto oldwp_
se refere à tabela de origem
Você não pode exportar apenas categorias (ou taxonomias em geral). Basta exportar todo o conteúdo com Ferramentas / Exportar e você pode excluir o conteúdo, exceto as categorias do xml.
Qual é o seu objetivo final aqui? Apenas para obter uma lista de categorias de um blog para outro? Ou você está tentando mover todo o conteúdo de uma categoria ou categorias para outra instalação do WordPress?
É meio feio, mas você pode exportar todo o conteúdo e excluir o conteúdo dentro das categorias ou excluir as categorias que você não deseja. Provavelmente, seria uma das maneiras mais rápidas de atingir seu objetivo.
Se você tiver acesso às tabelas do banco de dados, poderá exportar o mysql dump das tabelas wp_term_relationships, wp_term_taxonomy, wp_terms e importá-las para a nova instalação do wordpress. Eu fiz isso entre duas instalações WP com mais de 300 categorias e funcionou bem.