PS PrestaShop Intermedio

Migrazione da WooCommerce a PrestaShop — Guida completa

Installare, connettere ed eseguire la migrazione completa WooCommerce → PrestaShop: le 7 fasi, il mapping, il dry-run e la risoluzione dei problemi.

Aggiornato Versione del modulo 1.1.0

Panoramica

Migrazione WooCommerce (dfmigratewoocommerce) migra un negozio WooCommerce completo su PrestaShop 8 o 9: categorie, tag, attributi globali, prodotti semplici e variabili (variazioni convertite in combinazioni), immagini, metadati personalizzati, clienti con indirizzi e ordini. Il modulo si collega direttamente al database MySQL di WordPress, lavora a lotti AJAX senza timeout e mantiene un mapping Woo ↔ PS nel database che rende ogni fase rilanciabile senza duplicati.

Il database WooCommerce di origine viene solo letto, mai modificato. Tutte le scritture avvengono lato PrestaShop.

Installazione

  1. Nel back office PrestaShop, apri Moduli > Gestore moduli > Carica un modulo e seleziona il file dfmigratewoocommerce.zip.
  2. Il modulo crea tre tabelle tecniche: df_woomig_mapping (corrispondenze Woo ↔ PS), df_woomig_log (log) e df_woomig_progress (avanzamento delle fasi).
  3. Clicca su Configura per aprire l’interfaccia di migrazione.

Connessione a WooCommerce

Nella scheda Connessione, inserisci:

  • Host / Porta: server MySQL del database WordPress (porta 3306 di default);
  • Database, Utente, Password: credenziali del database WordPress;
  • Prefisso tabelle: di solito wp_ — verifica in wp-config.php ($table_prefix);
  • URL del sito: l’indirizzo pubblico del negozio WooCommerce, usato per scaricare le immagini (modalità HTTP), o un percorso del filesystem in modalità locale.

Clicca su Testa connessione: il modulo mostra il numero di prodotti, categorie, tag, attributi globali, clienti e ordini rilevati nell’origine.

Se il tuo hosting blocca le connessioni MySQL remote, importa un dump del database WordPress in uno schema dedicato sul server PrestaShop (es. wp_source) e collega il modulo a quello schema in localhost. Funziona anche un tunnel SSH.

Parametri

  • Lingua predefinita: lingua PrestaShop in cui verranno scritti i contenuti Woo (monolingue);
  • Gruppo di imposte predefinito: applicato a tutti i prodotti migrati — i prezzi Woo vengono copiati così come sono nel prezzo IVA esclusa di PrestaShop;
  • Attributi come caratteristiche: attiva il doppio mapping (ogni attributo globale diventa anche una caratteristica, visibile sui prodotti semplici) e l’importazione dei postmeta personalizzati come caratteristiche meta:*;
  • Dimensione del lotto: numero di entità elaborate per richiesta AJAX (25 di default; riducilo su hosting condiviso lento);
  • Modalità immagini: http (download dall’URL del sito) o local (l’URL del sito viene trattato come percorso filesystem contenente wp-content/uploads);
  • Dry-run: modalità simulazione — tutto viene registrato, niente viene scritto;
  • Corriere predefinito: assegnato agli ordini migrati.

Eseguire la migrazione

Nella scheda Migrazione, esegui le fasi in ordine — ognuna si basa sul mapping creato dalle precedenti:

  1. Attributi — ogni attributo globale Woo (pa_*) diventa un gruppo di attributi PS (i gruppi colore vengono rilevati) e, se l’opzione è attiva, una caratteristica. Tutti i valori vengono creati su entrambi i lati.
  2. Categorie — l’albero completo viene ricostruito; i genitori mancanti vengono risolti ricorsivamente, gli orfani agganciati alla radice con un avviso.
  3. Tag — deduplicati per nome.
  4. Prodotti — prodotti semplici e variabili: prezzi, prezzi scontati (SpecificPrice), SKU, peso, dimensioni, stock, stato, prodotti virtuali, collegamenti a categorie/tag, caratteristiche, metadati personalizzati. Le variazioni diventano combinazioni con impatto sul prezzo, stock e riferimento propri. Le immagini del prodotto vengono migrate al volo.
  5. Immagini — fase di recupero: scorre i prodotti già migrati e importa le immagini mancanti (immagine principale + galleria), rigenerando tutte le miniature.
  6. Clienti — account con indirizzi di fatturazione e spedizione. Password rigenerate in bcrypt: i clienti usano «password dimenticata» al primo accesso. Le email già presenti in PS vengono riutilizzate, mai duplicate.
  7. Ordini — rilevamento automatico HPOS (WooCommerce 8+, tabelle wc_orders) o legacy (wp_posts). Righe, totali, valuta e stati mappati sugli stati ordine PrestaShop. Nessuna email viene inviata.

Ogni fase mostra una barra di avanzamento in diretta e può essere interrotta e rilanciata: riprende esattamente da dove si era fermata.

Fai prima un passaggio completo in dry-run per validare il perimetro nel log, poi disattiva il dry-run e rilancia.

Mapping e rilanci

La scheda Mapping mostra il numero di corrispondenze per tipo di entità. Ogni entità presente nel mapping viene saltata nei rilanci: puoi rilanciare una fase completa senza creare duplicati. Il pulsante di reset cancella il mapping di un tipo (o di tutto) — le entità già create lato PrestaShop restano al loro posto.

Log

La scheda Log elenca gli eventi per fase e livello (info, successo, avviso, errore): prodotti creati, variazioni saltate per mancanza di attributo globale, immagini non trovate, ordini senza cliente… Pulizia con un clic.

Dopo la migrazione

  • Lancia una reindicizzazione della ricerca: Parametri negozio > Ricerca > Indicizza tutti i prodotti;
  • Verifica un campione di prezzi se il tuo negozio Woo salvava prezzi IVA inclusa (PrestaShop si aspetta IVA esclusa);
  • Controlla il gruppo di imposte, i corrieri e i metodi di pagamento;
  • Elimina la configurazione di connessione (o disinstalla il modulo): le credenziali MySQL sono memorizzate nella configurazione PrestaShop.

Limiti noti

  • Gli attributi locali (definiti su un singolo prodotto, non pa_*) usati nelle variazioni non possono diventare combinazioni — PrestaShop richiede attributi globali. Queste variazioni vengono saltate e segnalate nel log. Convertili in attributi globali lato Woo prima della migrazione se necessario.
  • Gli ordini vengono migrati come storico: le imposte non vengono ricalcolate, i totali Woo vengono copiati così come sono.
  • Coupon, recensioni prodotto e abbonamenti non vengono migrati in questa versione.

Risoluzione dei problemi

«Connessione fallita» al test

Verifica che l’utente MySQL possa connettersi dall’IP del server PrestaShop (GRANT ... ON db.* TO 'user'@'ip') e che la porta 3306 sia aperta. In alternativa, usa un dump locale o un tunnel SSH.

Immagini mancanti in modalità HTTP

Il sito WooCommerce deve essere raggiungibile via HTTP/HTTPS dal server PrestaShop. Se il sito di origine è offline, usa la modalità local copiando wp-content/uploads sul server PrestaShop e indicando il suo percorso come URL del sito.

Variazioni assenti su un prodotto

Consulta il log: se le variazioni usavano attributi locali (non globali), vengono saltate per progettazione. Il prodotto padre viene migrato con i suoi dati di base.

Questa pagina ti è stata utile?

Ancora bloccato? Contatta l'assistenza