- Patryk Marek
- News
- 0 piace
- 572 visualizzazioni
- 0 Commenti
Il fornitore ha ritirato la collezione, l’importazione ha lasciato voci non necessarie oppure, a fine stagione, bisogna riordinare alcune migliaia di prodotti. L’elenco è pronto, ma selezionare manualmente le pagine successive nel pannello richiede tempo. Con un catalogo ampio conta anche il modo in cui viene eseguita l’operazione: un processo lungo deve conservare l’avanzamento e permettere di verificare che cosa sia stato effettivamente modificato.
L’eliminazione massiva dei prodotti in PrestaShop da CSV consente di elaborare un elenco indicato di identificatori senza aprire ogni scheda prodotto. Il modulo Eliminazione prodotti Pro può disattivare i prodotti, rimuoverli oppure cancellare solo le combinazioni. Suddivide il lavoro in brevi passaggi AJAX, salva la coda nel database e mostra l’avanzamento. Supporta anche un elenco incollato nel modulo e la selezione dei prodotti in base a condizioni.
Migliaia di prodotti da eliminare — perché AJAX è importante?
L’elaborazione a lotti consente di suddividere un’operazione lunga in molte richieste separate al server. Il browser avvia un passaggio, riceve il risultato e solo allora esegue il successivo. L’intero processo può durare più a lungo del limite di tempo di una singola richiesta PHP, perché i passaggi successivi lavorano sulla parte restante della coda salvata.
In Eliminazione prodotti Pro il passaggio ha per impostazione predefinita un budget di 8 secondi. Può essere impostato in un intervallo di 2–30 secondi e il modulo tiene conto del limite PHP segnalato dal server. Il numero di prodotti gestiti in un passaggio dipende dal tempo necessario per elaborarli. L’eliminazione di un prodotto con molte combinazioni, immagini e collegamenti può richiedere più tempo rispetto alla disattivazione di una voce semplice.
Si tratta di una soluzione per elenchi grandi: la versione attuale accetta fino a 200.000 identificatori in un unico processo. Un insieme più grande deve essere suddiviso in più processi. Il limite riguarda l’elenco di input; un singolo indice non univoco può corrispondere a più prodotti. AJAX risolve il problema dell’esecuzione dell’intero elenco in un’unica lunga richiesta, ma non elimina i limiti di memoria, del database o delle prestazioni dell’hosting. Per questo non esiste un’unica risposta affidabile alla domanda su quanto tempo richiederà l’eliminazione di 50.000 prodotti in ogni negozio.
Durante il lavoro sono visibili il numero di righe elaborate, la velocità e il tempo stimato rimanente. Il processo può essere messo in pausa e ripreso. Dopo la chiusura della scheda, il browser smette di avviare i passaggi successivi, ma la coda salvata e l’avanzamento restano disponibili al ritorno nel modulo.
Disattivare un prodotto, rimuoverlo o cancellare solo le varianti?
Per prima cosa scegli che cosa deve accadere alle voci dell’elenco. Queste tre azioni hanno effetti diversi:
| Azione | Effetto e utilizzo |
|---|---|
| Disattiva prodotti | Il prodotto rimane nel catalogo, ma viene contrassegnato come inattivo. Potrai riattivarlo in seguito. È utile quando vuoi conservare i dati per una decisione successiva. |
| Rimuovi prodotti | Rimuove definitivamente i prodotti nell’intervallo selezionato. La rimozione completa utilizza il meccanismo di PrestaShop e comprende i dati collegati, incluse immagini e combinazioni. Il modulo non dispone di una funzione per annullare questa operazione. |
| Rimuovi solo combinazioni | Rimuove le varianti corrispondenti, lasciando i prodotti principali. Richiede di verificare in che modo l’identificatore dell’elenco indichi le combinazioni. |
In multistore verifica anche l’ambito. La rimozione di un prodotto solo dal negozio selezionato può significare scollegarlo da quel negozio, mantenendolo negli altri. Un’operazione che comprende tutti i negozi ha effetti più ampi. Il negozio selezionato serve anche per cercare le voci dell’elenco — il solo ambito “tutti i negozi” non significa cercare ogni identificatore nell’intera installazione.
Come preparare il CSV per l’eliminazione massiva dei prodotti?
Il file più semplice contiene una colonna con gli identificatori dei prodotti della stessa installazione PrestaShop:
id_product
101
102
103
Per un file di questo tipo seleziona l’identificatore id_product, la colonna 0 e indica che la prima riga è l’intestazione. La numerazione delle colonne parte da zero. Se l’esportazione contiene più colonne, indica quella corretta; gli altri dati non determinano l’azione che il modulo deve eseguire.
I prodotti possono essere abbinati anche per indice, EAN-13 o UPC. MPN e ISBN sono disponibili quando i campi corrispondenti esistono nel negozio in questione. Per i codici con zeri iniziali mantieni il formato testo nel foglio di calcolo. Non dare inoltre per scontato che il riferimento del fornitore sia automaticamente lo stesso campo del riferimento prodotto in PrestaShop.
La ripetizione di un codice nel file e un codice che corrisponde a più prodotti sono due casi diversi. Per le ripetizioni è possibile attivare l’elaborazione dell’identificatore una sola volta. Per una corrispondenza ambigua scegli una politica: salto e report, tutte le corrispondenze oppure la prima corrispondenza. In caso di eliminazione, chiarisci prima da dove deriva l’ambiguità.
Il modulo accetta file CSV o TXT fino a 20 MB, anche se le impostazioni di caricamento dei file sul server possono imporre un limite inferiore. Un elenco breve può anche essere incollato nel modulo, senza preparare un file.
Non hai un CSV? Crea un elenco in base a condizioni
La scheda di selezione dei prodotti consente di preparare la coda senza esportazione. Sono disponibili, tra gli altri, i criteri di assenza di stock, assenza di vendite, prodotto disattivato, assenza di immagine, prezzo base pari a zero, marca, fornitore, categoria, valore della caratteristica e modello di riferimento.
Le condizioni selezionate sono collegate tramite AND: il prodotto deve soddisfarle tutte. Puoi quindi cercare prodotti disattivati di una marca specifica che non sono comparsi negli ordini nel periodo selezionato. Il pulsante “Conta” mostrerà il numero di corrispondenze prima di avviare il processo.
Vale la pena comprendere due dettagli. Il criterio di assenza di vendite verifica le occorrenze negli ordini, compresi quelli annullati e non pagati. A sua volta, il numero di giorni per l’assenza di stock o la disattivazione si riferisce all’ultima modifica dei dati del prodotto. Non è una misura del tempo trascorso dall’esaurimento delle scorte né dal cambio di stato. Questa scelta crea un elenco di candidati al riordino, non la prova che ognuno di essi debba essere eliminato.
Cosa fare con gli indirizzi dei prodotti dopo l’eliminazione?
Prima di cancellare il catalogo, definisci il destino dei suoi URL. Una temporanea mancanza di merce non deve necessariamente significare la disattivazione o la rimozione della pagina. Google indica che lasciare disponibile la scheda con l’informazione sull’assenza del prodotto consente comunque di trovare informazioni sul prodotto. Vedi la spiegazione di Google sulla temporanea indisponibilità dell’offerta.
In caso di ritiro definitivo del prodotto, considera due casi:
- Esiste un sostituto reale o un nuovo indirizzo con lo stesso contenuto. Prepara un reindirizzamento 301 verso la pagina appropriata.
- Il prodotto non esiste più e non esiste una pagina sostitutiva adeguata. Una risposta corretta 404 o 410 informa che quell’indirizzo non dovrebbe essere indicizzato.
Questo approccio è descritto nella documentazione di Google sulle pagine rimosse e spostate. Non reindirizzare meccanicamente tutti i vecchi prodotti alla home page: Google avverte che i reindirizzamenti verso una destinazione non correlata possono essere considerati soft 404.
Eliminazione prodotti Pro non crea reindirizzamenti. Il salvataggio CSV contiene, tra l’altro, l’ID e il frammento amichevole dell’indirizzo, ma prima dell’eliminazione conviene conservare anche l’elenco completo degli URL reali e dei rispettivi equivalenti di destinazione. Dopo l’operazione verifica i vecchi indirizzi, i link interni e la sitemap.
Come effettuare un grande riordino del catalogo passo dopo passo?
- Definisci l’ambito. Separa i prodotti ritirati definitivamente da quelli temporaneamente non disponibili. Scegli l’azione e il negozio a cui deve riferirsi l’operazione.
- Conserva la possibilità di ripristinare il negozio. Prima della rimozione definitiva esegui un backup completo del database e dei file. L’istantanea CSV del modulo salva dati selezionati del prodotto, ma non sostituisce le immagini, l’intera configurazione e una copia completa del negozio.
- Prepara l’elenco e le politiche per le eccezioni. Verifica gli identificatori, la gestione delle corrispondenze multiple e il comportamento nei confronti dei prodotti presenti negli ordini. Per questi ultimi il modulo può disattivare il prodotto invece di rimuoverlo, saltarlo oppure consentirne la rimozione.
- Avvia un processo di prova. La simulazione, attivata per impostazione predefinita, elabora l’elenco e segnala le corrispondenze senza modificare il catalogo. Chiarisci i risultati non trovati, saltati ed errati.
- Controlla la soglia di sicurezza. La soglia percentuale predefinita è del 30%. È un controllo aggiuntivo della dimensione dell’operazione, separato dal limite di 200.000 identificatori. Non considerare il suo messaggio come un motivo per disattivare automaticamente le protezioni — prima conferma l’ambito dell’elenco.
- Esegui il processo effettivo e controlla il report. Monitora l’avanzamento e, al termine, confronta i prodotti selezionati e i loro indirizzi con il risultato atteso. Per un elenco grande puoi prima eseguire l’operazione effettiva su un piccolo campione.
Il report CSV distingue tra esito positivo, nessuna corrispondenza, salto, errore e voci in attesa, che un processo interrotto non ha raggiunto. Il semplice fatto che la barra arrivi alla fine non significa che ogni prodotto sia stato eliminato: alcune voci potrebbero essere state saltate secondo la politica selezionata oppure rifiutate da PrestaShop.
Domande più frequenti sull’eliminazione massiva dei prodotti
Il modulo eliminerà qualsiasi numero di prodotti?
I cataloghi grandi possono essere riordinati con processi AJAX successivi. Nella versione attuale un elenco ha un limite di 200.000 identificatori e il file da caricare un limite di 20 MB. Un insieme più grande deve essere suddiviso. Il tempo di esecuzione dipende dai dati dei prodotti, dal server e dal funzionamento degli altri moduli.
L’eliminazione continua a funzionare dopo la chiusura del browser?
Dopo la chiusura della scheda non vengono inviati i passaggi AJAX successivi. La richiesta già avviata può ancora terminare il lavoro. Al ritorno è possibile riprendere un processo incompleto disponibile sulla base della coda salvata. Il modulo non dispone di una pianificazione CRON che avvii autonomamente questo riordino.
Il pulsante di arresto ripristina i prodotti eliminati?
No. L’arresto del processo non annulla le modifiche eseguite. Il modulo non dispone della funzione “annulla eliminazione”; il ripristino dei dati cancellati richiede una copia adeguata del negozio. Un prodotto disattivato può invece essere riattivato.
Uno stock pari a zero è sufficiente per eliminare un prodotto?
Non necessariamente. Il prodotto può tornare in vendita, avere traffico dai motori di ricerca oppure contenere informazioni utili ai clienti. Il criterio di assenza di stock aiuta a trovare le voci da valutare. La decisione di eliminazione va presa dopo aver verificato i piani di vendita e il futuro della pagina prodotto.
Eliminazione prodotti Pro per PrestaShop è efficace per grandi riordini grazie alla coda, ai brevi passaggi AJAX, alla ripresa e ai report. Prepara l’elenco corretto, scegli tra disattivazione ed eliminazione e inizia dalla simulazione. In questo modo anche un catalogo con migliaia di voci può essere riordinato in fasi controllate.
Commenti (0)