CSV prodotti per WooCommerceSviluppo e personalizzazione

Uno script Python che trasforma il suo file prodotti in un CSV per l'importatore di prodotti integrato di WooCommerce

Di solito pronto in 15 minutiRevisioni incluseControllo di qualità
Pacchetti
Pagamento protettoDettagli
  • Le revisioni previste dal pacchetto sono gratuite.
  • Se non risponde entro 3 giorni dalla consegna, il lavoro viene accettato automaticamente.

Il denaro viene riservato al momento del pagamento e sbloccato solo quando accetta il lavoro.

Uno script Python che trasforma il suo file prodotti in un CSV per l'importatore di prodotti integrato di WooCommerce

Esempio di risultato

Esempio per il pacchetto Standard

Unire i file mensili delle vendite di 9 negozi in un unico report Excel

Come si esegue

python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO  Cartella: sales/2026-10, 9 file trovati
2026-11-02 09:14:03 INFO  shop-01.csv: 1.284 righe
2026-11-02 09:14:04 INFO  shop-02.xlsx: 967 righe
2026-11-02 09:14:04 WARN  shop-07.csv: saltate 3 righe senza prezzo (righe 88, 412, 913)
2026-11-02 09:14:05 INFO  Fatto: 10.412 righe -> report-2026-10.xlsx (fogli "Vendite" e "Totali")

Impostazioni, non codice

I nomi delle colonne di ogni negozio si trovano in settings.ini, quindi un nuovo negozio o una colonna rinominata è una riga lì:

[columns]
date = Data, Data vendita, Giorno
product = Prodotto, Articolo, Descrizione
quantity = Q.tà, Quantità, Pz
price = Prezzo, Prezzo unitario

Una parte del codice

def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
    """Legge il file di un negozio e gli dà i nomi di colonna del report."""
    table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
    renamed = {}
    for name, variants in columns.items():
        found = next((c for c in table.columns if c.strip() in variants), None)
        if found is None:
            raise ReportError(f"{path.name}: nessuna colonna per '{name}' (cercate: {', '.join(variants)})")
        renamed[found] = name
    table = table.rename(columns=renamed)[list(columns)]
    table["shop"] = path.stem
    return table

File: un archivio ZIP con merge_sales.py (310 righe), settings.ini, requirements.txt e un README su come installare Python, eseguire lo script e cosa significa ogni messaggio del registro. Il cliente lo esegue sul proprio computer.

Cliente: una piccola catena di 9 cartolerie; ogni negozio invia le vendite del mese in un file CSV o Excel, con nomi di colonna leggermente diversi. Compito: un unico script che legge tutti i file di una cartella, porta le colonne a una stessa forma e scrive un solo report Excel con tutte le vendite e un foglio di totali per negozio.

Il cliente e tutti i dati sono inventati.

Informazioni sul servizio

WooCommerce ha un suo importatore di prodotti, ma si aspetta le sue colonne: Type, SKU, Name, Regular price, Categories con > tra i livelli, immagini come link e, per abbigliamento o altre opzioni, un prodotto principale più una riga per ogni variazione collegata tramite Parent. Questo script Python trasforma in quel file il listino del suo fornitore, un'esportazione da un altro negozio o una sua tabella. Abbina le sue colonne, costruisce le categorie e, dallo Standard, i prodotti variabili con attributi come taglia e colore, ed elenca le righe senza prezzo, SKU o immagine. Le immagini devono trovarsi a link che il suo sito può scaricare. L'importatore lo avvia lei nel pannello di WordPress; non accediamo mai al suo sito. Provi prima con pochi prodotti e tenga un backup del negozio.

Cosa è incluso

  • Cosa riceveUn archivio ZIP con lo script Python, un README con le istruzioni passo passo e, dallo Standard, un file di impostazioni con la mappa delle colonne; il codice è visibile anche nella pagina dell'ordine.
  • Le colonne di WooCommerceCome le si aspetta l'importatore di prodotti integrato
  • Variazioni collegateDallo Standard, prodotti principali con taglie e colori
  • Categorie annidateAbbigliamento > Donna > Vestiti, come le legge WooCommerce
  • Problemi elencatiLe righe senza prezzo, SKU o immagine vengono segnalate
  • Codice leggibileCon commenti, facile aggiungere una colonna in seguito

Come funziona

  1. 1
    FileLei invia un campione del suo file prodotti e dice cosa va dove
  2. 2
    CodiceScriviamo lo script e la guida per eseguirlo
  3. 3
    Lo proviImporta pochi prodotti su una copia del negozio o su un sito di prova
  4. 4
    ModificheChiede modifiche nei limiti del pacchetto e invia eventuali messaggi di errore

Cosa ci serve da lei

20-30 righe del suo file prodotti, come vi sono scritte le opzioni (una riga per taglia, o le taglie in un'unica cella), il suo albero delle categorie, dove si trovano le immagini (link, o file già nella libreria media di WordPress) e come vanno impostati i prezzi. Un'esportazione di qualche prodotto dal suo negozio WooCommerce aiuta a far corrispondere esattamente le colonne. Il suo sistema: Windows, macOS o Linux.

Le chiederemo:

  • Che file ha adesso?
  • I suoi prodotti hanno opzioni?
  • Qual è il suo albero delle categorie?
  • Dove sono le immagini?

Confronto dei pacchetti

PacchettiBaseProdotti semplici15 €StandardProdotti variabili30 €PremiumStrumento di importazione prodotti60 €
Tempi di consegna1 giorno2 giorni3 giorni
Revisioni123
Codicefino a 150 righefino a 400 righefino a 1.000 righe
File di codice1fino a 3fino a 8
File di impostazioniNoSìSì
Messaggi di errore chiari e un logNoSìSì
Opzioni di avvio e una guida per eseguirlo a orari programmatiNoNoSì
Guida all'installazione e all'avvio (README)SìSìSì
LinguaggioPythonPythonPython
Ordina BaseOrdina StandardOrdina Premium

Pagamento protetto

Paga al momento dell'ordine, ma il denaro viene sbloccato solo per un lavoro accettato.

  • Prezzo fissoIl prezzo del pacchetto non cambia dopo il pagamento.
  • Il denaro viene riservatoAl pagamento, l'importo viene solo riservato. Passa a Dleex quando accetta il lavoro.
  • Verificato prima della consegnaOgni risultato passa un controllo di qualità prima di arrivare a lei, e lo vede nella pagina dell'ordine prima di accettarlo.
  • Revisioni gratuiteRichieda revisioni nell'ambito del suo brief tante volte quante ne prevede il pacchetto.
  • Accettazione dopo 3 giorniSe entro 3 giorni dalla consegna non accetta il lavoro né richiede una revisione, il lavoro viene accettato automaticamente. Se scrive nella chat dell'ordine dopo la consegna, l'ordine resta in attesa; dopo la nostra risposta potremmo far ripartire i 3 giorni e glielo indicheremo nella chat.
  • Rifacimento o rimborso totaleSe il risultato non corrisponde al suo brief e le revisioni non hanno risolto il problema, oppure il lavoro richiede più del doppio dei tempi di consegna previsti, scriva nella chat dell'ordine: rifaremo il lavoro o le rimborseremo l'intero pagamento.
Come funziona →

Domande e risposte

Mi serve un plugin di importazione a pagamento?

No. Il file è fatto per l'importatore di prodotti incluso in WooCommerce (Prodotti, poi Importa). Altri plugin di importazione usano strutture diverse; ci dica se ne usa uno.

Può aggiornare i prodotti esistenti?

Sì: WooCommerce può aggiornare i prodotti con SKU o ID corrispondente se in importazione spunta l'opzione di aggiornamento. Il Premium prepara file di aggiornamento per SKU dal nuovo listino del fornitore.

E se l'importazione va male?

Per questo si prova prima con pochi prodotti, idealmente su una copia del negozio, e si tiene un backup. L'importatore non può annullare da solo un'importazione.

Importerete voi i prodotti per me?

No. Non accediamo mai al suo sito. L'importatore lo avvia lei, e il README mostra ogni passaggio.

Non hai trovato la risposta?

Pacchetti