Ho letto molte discussioni in Rete riguardanti un problema che si verifica con PrestaShop, il noto CMS utilizzato per la costruzione di siti E-Commerce, ovvero quello relativo alla cancellazione degli ordini.
Spesso, per testare le funzionalità di PrestaShop o solo per curiosità, potremo voler cancellare degli ordini di prova, ed avere qualche difficoltà, perchè anche se “annullati” rimangono sempre salvati e visibili dall'Amministrazione del CMS. Immaginiamo di realizzare un sito per un cliente, e di generare numerosi ordini di prova per testare e simulare la vendita di prodotti prima di consegnare il sito pronto; beh, effettivamente lasciare tutti questi ordini non sarebbe il massimo ;-)
Vediamo allora come cancellare ed azzerare gli ordini in PrestaShop.
1) Tramite l'utilizzo di questa Query, è possibile cancellare gli ordini di prova su Prestashop, i clienti di prova ed eventuali messaggi dal vostro sito e-commerce Prestashop. Ovviamente, per effettuare la Query, è necessario entrare nel vostro pannello di controllo del sito, in PhpMyAdmin, una volta ed eseguire la seguente Query SQL:
TRUNCATE TABLE `ps_customer`; TRUNCATE TABLE `ps_customer_group`; TRUNCATE TABLE `ps_address`; TRUNCATE TABLE `ps_orders`; TRUNCATE TABLE `ps_order_detail`; TRUNCATE TABLE `ps_order_discount`; TRUNCATE TABLE `ps_order_history`; TRUNCATE TABLE `ps_message`; TRUNCATE TABLE `ps_cart`; TRUNCATE TABLE `ps_cart_product`; TRUNCATE TABLE `ps_cart_discount`;
Eseguita la Query, tutti gli ordini che sono stati eliminati, inclusi eventuali messaggi e i clienti fittizi.
N.B.
Ovviamente, per evitare alcun tipo di problema e/o spiacevole imprevisto, eseguite un backup di sicurezza del vostro sito prima di effettuare la Query al Database.
2) Se invece non volete mettere mano a PhpMyAdmin ed agire direttamente sul Database, utilizzate questa modifica, che consente di cancellare gli ordini direttamente dal Back-End.
Nelle cartelle dei file del vostro PrestaShop, aprite il file “AdminOrders.php”, che si trova nella cartella “Tabs”, che a sua volte è situata all'interno della cartella “admin”.
Alla riga nr. 25, dove si trova la seguente stringa:
$this->colorOnBackground = true;
aggiungete subito dopo il codice:
$this->delete = true;
Salvate il file “AdminOrders.php”; noterete ora nella schermata degli Ordini l’icona del cestino che vi permetterà di cancellare gli ordini direttamente dal Pannello di controllo.
Grazie a questa semplice modifica potrete eliminare gli ordini singolarmente, cancellandoli anche dal database. Un ringraziamento ad Antonio Mecca, per queste preziose soluzioni, sicuramente gradite a tutti gli utenti di Prestashop.
Via AntonioMecca.com