Creazione di uno strumento di esportazione CSV di prodotti in OpenCart

Se gestisci un negozio online o qualsiasi attività web e non conosci l'importanza di CSV (Comma-Separated-Value), è ora di aggiornare le tue conoscenze sulla manipolazione dei dati. Per comprenderne l'importanza, esaminiamo uno scenario che coinvolge un negozio OpenCart e vediamo come creare un CSV Export Tool del prodotto come soluzione. 

Supponiamo che tu stia gestendo un negozio online contenente migliaia di articoli e devi modificare tutti i prezzi degli articoli per un evento speciale. Ci potrebbero essere due soluzioni possibili:

  1. Vai al Pannello di controllo (Pannello di amministrazione) dei Prodotti e modifica manualmente i prezzi uno per uno.
  2. Fornire alla persona interessata l'accesso diretto al database e lasciarlo giocare con i tuoi dati.

Nel primo caso, quando devi modificare i prezzi degli articoli uno per uno seguendo l'interfaccia utente fornita dal pannello di amministrazione del negozio, è un modo sicuro per farlo, ma la modifica di migliaia di prezzi degli articoli potrebbe richiedere molto tempo- probabilmente alcune settimane per grandi quantità di dati.

Nel secondo caso, quando fornisci l'accesso diretto al database del tuo negozio, potrebbe essere un problema di sicurezza. A volte, potrebbero verificarsi seri problemi che potrebbero causare la rottura del sistema.

Qual'è la soluzione?

Quindi deve esserci un meccanismo in cui gli elementi sono formattati e puoi importarli / esportarli direttamente sul tuo sistema. Un CSV è la soluzione migliore. Quindi questo è ciò che faremo nel nostro tutorial.

Cos'è un CSV?

CSV è la forma abbreviata di "Comma Separated Value". È un modo per formattare le informazioni estratte da un database in modo che possano essere lette e modificate in un normale foglio di calcolo. È quindi possibile aggiungere informazioni nel database in un unico grande lotto.

Esportazione del prodotto in OpenCart

Considerando lo scenario precedente, a volte è difficile aggiungere e modificare prodotti in blocco, quindi creeremo uno strumento di esportazione CSV nel sistema. In questo modo possiamo avere tutti i prodotti in un formato specifico in modo da poter facilmente leggere, aggiungere e modificare le informazioni in seguito. Iniziamo a costruire prima lo strumento di esportazione.

1. Pulsante Esporta nella pagina Prodotti

1.1 Il controller

  1. Navigare verso (la directory del tuo opencart store) /admin/controller/catalog/product.php.
  2. Individua il getList () funzione.
  3. Aggiungere la seguente riga dopo questa riga di codice: 
$ this-> data ['products'] = array (); $ this-> data ['export_csv'] = $ this-> url-> link ('catalog / product / exportCSV', 'token ='. $ this-> session-> data ['token']. $ url, 'SSL'); 

Il controller analizza semplicemente un URL di esportazione per la vista in modo che possa essere collegato con il pulsante.

1.2 La vista

  1. Navigare verso (la directory del tuo opencart store) /admin/view/template/catalog/product_list.tpl.
  2. Individua il codice HTML:  
    .
  3. Aggiungi l'HTML del pulsante di esportazione:
'"> Esporta CSV

Vai al pannello di amministrazione del tuo negozio e scegli Catalogo> Prodotti, e vedrai il Esportare pulsante come mostrato nello screenshot seguente.

2. Esportare i prodotti

2.1 Controller

  1. Navigare verso(la directory del tuo opencart store) /admin/controller/catalog/product.php.
  2. Creare una nuova funzione pubblica, ad es. public function exportCSV () .
  3. All'interno della funzione, basta aggiungere le seguenti righe di codice.
$ This-> load-> modello ( '/ Catalogo della merce'); // Caricamento del modello di prodotti $ temp_data = $ this-> model_catalog_product-> getProducts (array ('filter_status' => 1)); // Recupera tutti i prodotti in cui lo stato è abilitato / * L'intestazione CSV inizia qui * / header ("Content-Type: text / csv"); intestazione ("Content-Disposition: attachment; filename = ProductsCSV -". date ('d-m-Y'). ". csv"); // Disabilita l'intestazione della cache ("Cache-Control: no-cache, no-store, must-revalidate"); // Intestazione HTTP 1.1 ("Pragma: no-cache"); // Intestazione HTTP 1.0 ("Expires: 0"); // Proxy / * Intestazione CSV termina qui * / $ output = fopen ("php: // output", "w"); // Apre e cancella il contenuto del file; o crea un nuovo file se non esiste $ data = array (); // Non vogliamo esportare tutte le informazioni da esportare in modo da mantenere un array separato per le informazioni da esportare foreach ($ temp_data as $ data) $ data [] = array ('product_id' => $ data [ 'product_id'], 'model' => $ data ['model'], 'name' => $ data ['name'], 'quantity' => $ data ['quantity'],);  // Esportare il file CSV foreach ($ data as $ row) fputcsv ($ output, $ row); // qui puoi cambiare il delimitatore / enclosure fclose ($ output); // Chiusura del file 

Ecco qui! Hai creato uno strumento di esportazione del prodotto per il tuo pannello OpenCart. Basta fare clic sul pulsante di esportazione e un CSV verrà scaricato sul tuo computer. Puoi aggiungere tutte le colonne che vuoi. 

Conclusione

"Il tempo è denaro." Come imprenditore o imprenditore, non vuoi perdere tempo prezioso. Per quanto riguarda il software, gli imprenditori sono sempre alla ricerca dell'approccio migliore e più efficiente per portare a termine il lavoro. 

Quindi in questo tutorial abbiamo creato uno strumento aziendale che può aiutare ad esportare le informazioni sui prodotti da OpenCart in un modo più semplice e veloce utilizzando il formato dei dati CSV. Inoltre scriverò un tutorial su "Import CSV", in modo che possiamo facilmente aggiungere e aggiornare le informazioni in base alle nostre esigenze. 

Spero che questo articolo ti sia d'aiuto per la tua attività. Si prega di fornire i vostri preziosi commenti qui sotto. Grazie!