CSV Importer CPT
Simple CSV import/export plugin. With full capabilities on custom post types, fields and taxonomies
by Luca Fontanot · github.com/lucafontanot/wp-csv-importer-cpt
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/lucafontanot/wp-csv-importer-cpt/archive/refs/heads/master.zipPlugin WordPress per l'importazione ed esportazione in massa di contenuti tramite file CSV, con supporto completo per custom post type, campi personalizzati (ACF) e tassonomie.
Caratteristiche
Importazione CSV
- Upload e analisi del file CSV con anteprima lato client delle colonne rilevate
- Rilevamento automatico del delimitatore (virgola
,o punto e virgola;) - Mapping dinamico delle colonne CSV verso:
- Campi nativi WordPress (titolo, contenuto, slug, data, stato, autore, ecc.)
- Custom fields / ACF (rilevati automaticamente dal database)
- Tassonomie (categorie, tag e qualunque tassonomia pubblica registrata)
- Auto-mapping intelligente: il sistema suggerisce automaticamente il mapping corretto per ogni colonna basandosi su alias italiani e inglesi (es. "Titolo" →
post_title, "Categoria" →category) - Creazione automatica dei termini di tassonomia se non esistenti
- Inserimento e aggiornamento: supporta sia la creazione di nuovi post che l'aggiornamento di post esistenti tramite il campo ID
- Report dettagliato con conteggi (importati, aggiornati, errori) e log scaricabile
Esportazione CSV
- Selezione post type: scegli da quale post type esportare i record
- Filtro per stato: esporta solo post pubblicati, bozze, o qualunque stato
- Selezione campi: scegli quali campi nativi, custom fields e tassonomie includere come colonne del CSV
- ID obbligatorio: il campo ID è sempre incluso come prima colonna, indispensabile per il re-import
- Esportazione in massa: gestisce volumi elevati di dati con query paginata (100 post alla volta, fino a 50.000 record)
- Compatibilità Excel: il CSV include il BOM UTF-8 per una corretta visualizzazione in Microsoft Excel
Flusso di lavoro completo
- Esporta i tuoi contenuti in un file CSV
- Modifica i valori desiderati in Excel, Google Sheets o qualsiasi editor CSV, mantenendo intatta la colonna ID
- Re-importa il CSV modificato: il sistema abbinerà i record esistenti tramite il campo ID e li aggiornerà automaticamente
Installazione
- Carica la cartella
csv-importer-cptnella directory/wp-content/plugins/del tuo sito WordPress - Attiva il plugin dal menu Plugin nell'amministrazione
- Accedi al menu CSV Importer nella barra laterale dell'admin
In alternativa, installa il file zip tramite la pagina Plugin → Aggiungi nuovo → Carica plugin.
Requisiti
- WordPress 5.0 o superiore
- PHP 7.4 o superiore
Utilizzo
Importare dati da CSV
- Vai a CSV Importer → Importa CSV
- Carica un file CSV (la prima riga deve contenere le intestazioni delle colonne)
- Il sistema mostrerà un'anteprima delle colonne rilevate
- Per ogni colonna CSV, scegli dal menu a tendina il campo WordPress corrispondente:
- Campi nativi WordPress: Titolo, Contenuto, Slug, Data, Stato, Autore, ID, ecc.
- Custom Fields / ACF: tutti i metadati presenti nel database
- Tassonomie: Categoria, Tag e altre tassonomie registrate
- Seleziona il Post Type di destinazione
- Configura le opzioni:
- Salta righe senza titolo: ignora le righe che non hanno un titolo né un ID
- Aggiorna post esistenti se trovo ID corrispondente: fondamentale per il round-trip export → modifica → import
- Clicca Avvia Import
- Al termine viene mostrato un report con il riepilogo dell'operazione
Esportare dati in CSV
- Vai a CSV Importer → Esporta CSV
- Seleziona il Post Type da esportare
- Scegli lo Stato Post (pubblicato, bozza, qualunque, ecc.)
- Seleziona i campi da includere nel CSV:
- Campi nativi WordPress: ID (sempre obbligatorio e in prima posizione), Titolo, Contenuto, Estratto, Slug, Data, Stato, Autore, Ordine, Genitore
- Custom Fields / ACF: spunta i metadati che vuoi esportare. Usa il link Seleziona/Deseleziona tutti per comodità
- Tassonomie: spunta le tassonomie di cui vuoi esportare i termini associati
- Clicca Esporta CSV
- Scarica il file generato
Esempio: aggiornamento in blocco di prodotti WooCommerce
- Esporta: seleziona il post type "Prodotto", includi ID, Titolo, Contenuto e il custom field
_price - Modifica: apri il CSV in Excel, aggiorna i prezzi nella colonna
_price - Importa: carica il CSV modificato, mappa
_pricecome custom field, attiva "Aggiorna post esistenti" - Il sistema aggiornerà solo il prezzo di ciascun prodotto, lasciando invariato tutto il resto
Formato del file CSV
- Delimitatore: virgola (
,) — supportato anche il punto e virgola (;) - Intestazioni: la prima riga contiene i nomi delle colonne
- Campi con virgole o virgolette: devono essere racchiusi tra virgolette doppie
" - Tassonomie: i termini sono separati da virgola (es.
Termine1, Termine2, Termine3) - Date: formato
YYYY-MM-DD HH:MM:SS - Encoding: UTF-8 con BOM
Mappatura automatica dei campi
Il plugin riconosce automaticamente le intestazioni delle colonne CSV più comuni, sia in italiano che in inglese:
| Intestazione CSV riconosciuta | Campo mappato |
|---|---|
| Titolo, Title, Nome, Name | post_title |
| Contenuto, Content, Descrizione, Description, Body, Testo, Text | post_content |
| Estratto, Excerpt, Riassunto, Summary | post_excerpt |
| Slug, Permalink | post_name |
| Data, Date | post_date |
| Stato, Status | post_status |
| Autore, Author, User | post_author |
| ID, Post ID | ID |
| Ordine, Order, Posizione, Position | menu_order |
| Genitore, Parent | post_parent |
| Categoria, Category, Cat | category |
| Tag, Etichetta, Etichette | post_tag |
FAQ
Quali post type posso importare/esportare?
Qualsiasi post type pubblico registrato in WordPress, inclusi Post, Pagine, Prodotti (WooCommerce), e qualunque custom post type creato da temi o altri plugin.
Come funziona l'aggiornamento dei post esistenti?
Durante l'import, se il campo ID è mappato e l'opzione "Aggiorna post esistenti" è attiva, il sistema cerca un post con quell'ID. Se esiste e appartiene al post type selezionato, il post viene aggiornato invece di crearne uno nuovo.
Posso esportare campi ACF?
Sì. Il plugin rileva automaticamente tutti i custom fields presenti nel database, inclusi quelli creati con Advanced Custom Fields (ACF). I campi ACF appariranno nella lista dei Custom Fields sia in esportazione che in importazione.
Cosa succede ai file CSV dopo l'elaborazione?
I file CSV caricati e generati vengono salvati in wp-content/uploads/csv-importer-tmp/ e automaticamente eliminati dopo 24 ore.
Come vengono gestiti grandi volumi di dati?
L'esportazione utilizza query paginate (100 post alla volta) per evitare timeout e problemi di memoria. L'importazione elabora il CSV riga per riga in lettura sequenziale.
Licenza
GPL-2.0+
Autore
Luca Fontanot