Een product CSV-exporthulpprogramma bouwen in OpenCart

Als u een online winkel of een webbedrijf heeft en u niet het belang van CSV (Comma-Separated-Value) kent, is het tijd om uw kennis over gegevensmanipulatie te upgraden. Om het belang ervan te begrijpen, laten we een scenario onderzoeken waarbij een OpenCart-winkel betrokken is, en bekijken hoe een Product CSV-exporttool als een oplossing te bouwen. 

Stel dat u een online winkel met duizenden items beheert en dat u alle artikelprijzen voor een speciale gebeurtenis moet wijzigen. Er kunnen twee mogelijke oplossingen zijn:

  1. Ga naar het configuratiescherm (Admin Panel) van de producten en verander handmatig de prijzen één voor één.
  2. Geef de relevante persoon directe toegang tot de database en laat hem of haar met uw gegevens spelen.

In het eerste geval, wanneer u de artikelprijzen één voor één moet wijzigen volgens de gebruikersinterface van het Store Admin Panel, is dit een veilige manier om dit te doen, maar het veranderen van duizenden artikelprijzen kan veel tijd kosten - waarschijnlijk enkele weken voor grotere hoeveelheden gegevens.

In het tweede geval, wanneer u directe toegang tot uw winkeldatabase verleent, kan dit een beveiligingsprobleem zijn. Soms kunnen er ernstige problemen optreden die het uitvallen van uw systeem kunnen veroorzaken.

Wat is de oplossing?

Er moet dus een mechanisme zijn waar de items worden opgemaakt en u kunt het rechtstreeks importeren / exporteren naar uw systeem in bulk. Een CSV is de beste oplossing. Dus dit is wat we gaan doen in onze tutorial.

Wat is een CSV?

CSV is de korte vorm van "Comma Separated Value". Het is een manier om informatie te formatteren die uit een database wordt gehaald, zodat deze kan worden gelezen en bewerkt in normale spreadsheetsoftware. U kunt dan in één grote hoeveelheid informatie terug in uw database toevoegen.

Product exporteren in OpenCart

Gezien het bovenstaande scenario is het soms moeilijk om producten in bulk toe te voegen en te bewerken, dus we gaan een CSV-exporthulpprogramma maken in het systeem. Op die manier kunnen we alle producten in een specifiek formaat hebben, zodat we de informatie later gemakkelijk kunnen lezen, toevoegen en bewerken. Laten we eerst beginnen met het bouwen van de exporttool.

1. Exporteer knop in productenpagina

1.1 De controller

  1. Navigeren naar (uw winkelwagen winkelcatalogus) /admin/controller/catalog/product.php.
  2. Lokaliseer de GetList () functie.
  3. Voeg de volgende regel toe na deze regel code: 
$ this-> data ['producten'] = array (); $ this-> data ['export_csv'] = $ this-> url-> link ('catalog / product / exportCSV', 'token ='. $ this-> session-> data ['token']. $ url, 'SSL'); 

De controller parseert eenvoudigweg een export-URL naar de weergave, zodat deze met de knop kan worden gekoppeld.

1.2 De weergave

  1. Navigeren naar (uw winkelwagenwinkel) /admin/view/template/catalog/product_list.tpl.
  2. Zoek de HTML:  
    .
  3. Voeg de HTML-knop voor de exportknop toe:
'"> CSV exporteren

Ga naar het beheerdersdashboard van uw winkel en kies Catalogus> Producten, en je zult het zien Exporteren knop zoals getoond in de volgende screenshot.

2. Exporteer de producten

2.1 Controller

  1. Navigeren naar(uw winkelwagen winkelcatalogus) /admin/controller/catalog/product.php.
  2. Maak een nieuwe publieke functie, d.w.z.. openbare functie exporteren CSV () .
  3. Voeg binnen de functie de volgende coderegels toe.
$ This-> load-> model ( 'catalogus / product'); // Het productmodel laden $ temp_data = $ this-> model_catalog_product-> getProducts (array ('filter_status' => 1)); // Haal alle producten op waar Status is ingeschakeld / * CSV-kop begint hier * / header ("Inhoudstype: tekst / csv"); header ("Content-Disposition: attachment; filename = ProductsCSV -". date ('d-m-Y'). ". csv"); // Schakel caching header uit ("Cache-Control: no-cache, no-store, must-revalidate"); // HTTP 1.1 header ("Pragma: no-cache"); // HTTP 1.0-header ("Expires: 0"); // Proxies / * CSV Header Ends Here * / $ output = fopen ("php: // output", "w"); // Opent en wist de inhoud van het bestand; of maakt een nieuw bestand als het niet bestaat $ data = array (); // We willen niet alle informatie exporteren die moet worden geëxporteerd dus onderhoud een aparte array voor de informatie die moet worden geëxporteerd naar elke ($ temp_data als $ data) $ data [] = array ('product_id' => $ data [ 'product_id'], 'model' => $ data ['model'], 'name' => $ data ['name'], 'quantity' => $ data ['quantity'],);  // Exporteren van de CSV foreach ($ data als $ rij) fputcsv ($ output, $ row); // hier kunt u het scheidingsteken / bijlage fclose ($ output) wijzigen; // Het bestand sluiten 

Alsjeblieft! U hebt een Product Export Tool voor uw OpenCart Panel gemaakt. Klik gewoon op de knop Exporteren en een CSV wordt gedownload naar uw computer. U kunt zoveel kolommen toevoegen als u wilt. 

Conclusie

"Tijd is goud." Als ondernemer of bedrijfseigenaar wilt u uw kostbare tijd niet verspillen. Wat software betreft, zijn ondernemers altijd op zoek naar de beste en meest efficiënte aanpak om het werk gedaan te krijgen. 

Daarom hebben we in deze zelfstudie een bedrijfstool ontwikkeld die kan helpen om productinformatie van OpenCart op een snellere en eenvoudigere manier te exporteren met behulp van het CSV-gegevensformaat. Ik ga ook een zelfstudie schrijven over "CSV Import", zodat we de informatie eenvoudig kunnen toevoegen en bijwerken volgens onze vereisten. 

Ik hoop dat je dit artikel nuttig vindt voor je bedrijf. Geef hieronder je waardevolle opmerkingen op. Bedankt!