Come esportare e importare tassonomie (categorie, tag e/o tassonomie personalizzate) e i loro termini

25 nov 2011, 19:22:37
Visualizzazioni: 45.3K
Voti: 11

Voglio esportare tutte le categorie di WordPress (nessun articolo, solo categorie) da un blog all'altro. Come posso farlo?

4
Commenti

Hai provato ad accedere a Gestisci>Esporta dal pannello di amministrazione del blog?

User User
25 nov 2011 19:40:18

Non c'è alcun menu Gestisci, c'è solo il menu Strumenti/Esporta ma non mi permette di esportare solo le categorie

chubbyk chubbyk
25 nov 2011 19:44:49

Mi dispiace, l'ho letto su un blog online. Potresti farlo a livello di database?

User User
25 nov 2011 19:59:46

Se hai bisogno di una soluzione semplice, prova il plugin Export Categories. https://wordpress.org/plugins/export-categories/

User User
17 ott 2016 09:50:27
Tutte le risposte alla domanda 7
1

Questa risposta è essenzialmente la stessa di Ünsal, ma vorrei approfondire un po' perché nonostante avesse ragione, la sua risposta non mi è stata di aiuto (stavo solo cercando di ricordare cosa avevo fatto in passato, avrei dovuto leggerla con più attenzione e avrei capito, ma penso che per altri una descrizione completa sarebbe utile).

Per esportare l'intera gerarchia delle categorie devi esportare "Tutto il contenuto"

Qualsiasi altra opzione non ti darà i dati completi (ad esempio, esportare un post con tutte le categorie associate funziona quasi sempre, ma perdi tutti i dati di parentela/gerarchia sulle tassonomie che sono gerarchiche).

Quando esporti "Tutto il contenuto", il file risultante ha una sezione con i dati sui tuoi termini. Se scorri il file dovrebbe essere abbastanza facile da trovare, dopo gli autori e prima degli "items" (cioè i post).

Puoi semplicemente importare questo e eliminare il contenuto se è un'opzione*

Importando il file completo replicherai perfettamente la gerarchia delle tassonomie, ma ovviamente importerai anche tutte le pagine e i post. Se non ce ne sono troppi, considera di eliminarli manualmente. Non ci vorrà molto se lo fai in blocco e ce ne sono meno di centinaia (ricorda che puoi usare le Opzioni Schermo nella schermata Modifica Post per mostrarne più del predefinito e quindi modificare in blocco più elementi alla volta).

Se hai troppo contenuto da rimuovere, allora devi modificare manualmente il file WXR per rimuovere tutto tranne i termini che vuoi mantenere.

Modificare il file WXR per rimuovere il contenuto

Questo può essere un po' complicato, ma in realtà se guardi il contenuto del file non è così difficile capire cosa fa ogni elemento. L'XML è come l'HTML con i tag, quindi la cosa principale da fare attenzione è che non elimini un tag di chiusura lasciando quello di apertura ecc.

Troverai che ci sono 1-3 tipi di definizioni di termini nel WXR, un tipo per le Categorie, uno per i "tag" e uno per i "termini". Le "tassonomie personalizzate" usano termini mentre le vecchie categorie e tag hanno il loro formato speciale.

ESEMPIO 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>

ESEMPIO 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>

ESEMPIO TERMINE TASSONOMIA PERSONALIZZATA

<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>

Quindi quello che vuoi fare è rimuovere tutto il contenuto tranne questi tag di categoria/tag/termine dal file WXR. Cioè i tag wp:author che vengono prima e i molti tag item che vengono dopo. Più importante: Non rimuovere i tag di chiusura /channel e /rss in fondo! Senza di loro l'XML non sarà valido.

OVVIAMENTE testerai i risultati dell'importazione del tuo file modificato prima di usarlo su un sito live. Prova a importarlo in un'installazione fresca localmente e vedi se fallisce completamente, poi controlla la schermata delle categorie in wp-admin e assicurati che tutto sia esattamente come ti aspettavi.

Buona fortuna!

29 apr 2014 21:02:12
Commenti

Nota che questo non aggiungerà una gerarchia alle categorie già esistenti. Assegnerà solo categorie genitore alle sottocategorie che non esistono già.

Zade Zade
10 ott 2019 09:09:39
0

Ho risolto questo problema con 2 query.

Non è il modo migliore suppongo, ma di sicuro non è il più sicuro. Inoltre presuppone che tu stia lavorando sullo stesso database (se non è così puoi facilmente esportare la query e poi importarla in un altro db).

L'ho usato su un'installazione wordpress vuota:

1 - Importa i termini delle categorie:

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 - Importa le relazioni e le descrizioni delle categorie

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'
         )
  ;

Comunque newwp_ si riferisce alle tabelle in cui vuoi importare mentre oldwp_ si riferisce alle tabelle sorgente

26 gen 2012 01:15:36
0

Non puoi esportare solo le categorie (o le tassonomie in generale). Puoi esportare tutto il contenuto tramite Strumenti/Esporta e poi eliminare dal file xml tutto tranne le categorie.

26 nov 2011 01:53:46
0

Qual è il tuo obiettivo finale qui? Ottenere semplicemente un elenco di categorie da un blog a un altro? Oppure stai cercando di spostare tutto il contenuto all'interno di una categoria o di più categorie in un'altra installazione di WordPress?

È un po' brutto, ma potresti esportare tutto il contenuto e poi eliminare semplicemente il contenuto all'interno delle categorie o cancellare le categorie che non vuoi. Probabilmente sarebbe uno dei modi più rapidi per raggiungere il tuo obiettivo.

28 nov 2011 04:26:48
1

Se hai accesso alle tabelle del database, puoi eseguire un dump MySQL delle tabelle wp_term_relationships, wp_term_taxonomy e wp_terms e importarle nella nuova installazione di WordPress. L'ho appena fatto tra due installazioni WP con oltre 300 categorie e ha funzionato perfettamente.

30 mar 2014 13:08:44
Commenti

grazie, ha funzionato bene dalla mia parte.

Nikhil VJ Nikhil VJ
15 set 2019 21:03:18
0

Dopo una ricerca impegnativa e aver provato molti plugin, purtroppo nessuno ha funzionato per me, ma poi ho avuto fortuna quando mi sono imbattuto in un plugin che non veniva aggiornato da anni ma che ha funzionato nel mio caso.

Il nome del plugin è: WP Export Categories & Taxonomies Di timersys

6 gen 2022 14:32:54
0

Non programmo da un po' di tempo, quindi ho trovato questo semplice metodo per ottenere tutti i tag da un sito WordPress. Vai su Articoli > Tag e clicca e trascina per selezionare tutti i tag e le altre informazioni. Copia e incolla in un documento Excel o in un programma di fogli di calcolo; i dati si separeranno in diverse colonne. La sesta colonna (slug) conterrà il tag separato da tutti gli altri dati nella pagina. Per rimuovere i trattini, basta fare una ricerca/sostituzione dei trattini con spazi singoli. Potresti avere diverse pagine di tag, ma non ci vorrà molto tempo. Io li inserisco in un programma AI per rimuovere gli a capo extra o per ordinarli alfabeticamente se ne aggiungo di nuovi. Faccio questo per raccogliere risorse per il lavoro SEO. Sicuramente questa non è la risposta di un programmatore, ma ho trovato questo thread che cercava la stessa soluzione, quindi nel caso qualcuno come me la trovi, spero sia d'aiuto!

14 giu 2023 03:52:28