Rumah > pembangunan bahagian belakang > tutorial php > Cipta alat OpenCart untuk mengeksport fail CSV produk

Cipta alat OpenCart untuk mengeksport fail CSV produk

王林
Lepaskan: 2023-09-02 06:02:01
asal
883 orang telah melayarinya

Jika anda menjalankan kedai dalam talian atau mana-mana perniagaan web dan anda tidak mengetahui kepentingan CSV (Nilai Dipisahkan Koma), maka sudah tiba masanya untuk meningkatkan pengetahuan anda tentang manipulasi data. Untuk memahami kepentingannya, mari kita periksa senario yang melibatkan gedung OpenCart dan lihat cara alat eksport CSV produk boleh dibina sebagai penyelesaian.

Andaikan anda menjalankan kedai dalam talian dengan beribu-ribu item, dan anda perlu menukar harga semua item untuk acara istimewa. Mungkin terdapat dua penyelesaian yang mungkin:

  1. Pergi ke panel kawalan produk (panel pentadbir) dan tukar harga secara manual satu persatu.
  2. Beri orang yang berkaitan akses terus ke pangkalan data dan biarkan dia menggunakan data anda.

Dalam kes pertama, apabila anda perlu menukar harga item satu demi satu mengikut antara muka pengguna yang disediakan oleh panel pentadbir kedai, ini adalah kaedah yang selamat, tetapi menukar harga beribu-ribu item mungkin mengambil banyak masa - untuk sejumlah besar Data mungkin mengambil masa beberapa minggu.

Dalam kes kedua, isu keselamatan mungkin timbul apabila anda memberikan akses terus kepada pangkalan data kedai. Kadangkala, masalah serius boleh berlaku yang menyebabkan sistem anda ranap.

Apakah penyelesaiannya?

Jadi mesti ada mekanisme di mana projek boleh diformat dan anda boleh mengimport/mengeksport secara berkumpulan terus ke dalam sistem anda. CSV ialah penyelesaian terbaik. Itulah yang akan kita lakukan dalam tutorial.

Apakah itu CSV?

CSV ialah singkatan untuk "Nilai Dipisahkan Koma". Ia adalah kaedah memformat maklumat yang diambil daripada pangkalan data supaya ia boleh dibaca dan diedit dalam perisian hamparan biasa. Anda kemudian boleh menambah sejumlah besar maklumat kembali ke pangkalan data.

Eksport produk dalam OpenCart

Memandangkan senario di atas, kadangkala sukar untuk menambah dan mengedit produk secara pukal, jadi kami akan mencipta alat eksport CSV dalam sistem. Dengan cara ini kami boleh menyediakan semua produk kami dalam format tertentu supaya kami boleh membaca, menambah dan mengedit maklumat dengan mudah kemudian. Mari kita mulakan dengan membina alat eksport.

1. Butang eksport dalam halaman produk

1.1 Pengawal

  1. Navigasi ke (katalog kedai opencart anda)/admin/controller/catalog/product.php. (您的 opencart 商店目录)/admin/controller/catalog/product.php
  2. 找到 getList() 函数。
  3. 在此代码行后面添加以下行:
$this->data['products'] = array(); 
$this->data['export_csv'] = $this->url->link('catalog/product/exportCSV', 'token=' . $this->session->data['token'] . $url, 'SSL'); 
Salin selepas log masuk

控制器只是将导出 URL 解析到视图,以便它可以与按钮链接。

1.2 视图

  1. 导航至 (您的 opencart 商店目录)/admin/view/template/catalog/product_list.tpl
  2. 找到 HTML:<div class="buttons">
  3. 添加导出按钮 HTML:
<a onclick="location = '<?php echo $export_csv; ?>'" class="button">Export CSV</a>
Salin selepas log masuk

前往您商店的管理面板并选择目录>产品,您将看到导出按钮,如以下屏幕截图所示。

创建用于导出产品 CSV 文件的 OpenCart 工具

2.出口产品

2.1 控制器

  1. 导航到(您的opencart商店目录)/admin/controller/catalog/product.
  2. 创建一个新的公共函数,即 public function exportCSV(){ }
  3. Cari fungsi getList().
  4. Tambah baris berikut selepas baris kod ini:

  5. $this->load->model('catalog/product'); // Loading the Model of Products
    
    $temp_data = $this->model_catalog_product->getProducts(array('filter_status'=>1)); // Fetch all the Products where Status is Enabled
    
    /* CSV Header Starts Here */
    
    header("Content-Type: text/csv");
    header("Content-Disposition: attachment; filename=ProductsCSV-".date('d-m-Y').".csv");
    // Disable caching
    header("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"); //Opens and clears the contents of file; or creates a new file if it doesn't exist
    
    $data = array(); 
    
    // We don't want to export all the information to be exported so maintain a separate array for the information to be exported
    foreach($temp_data as $data)
    {
        $data[] = array(
        'product_id' =>$data['product_id'],
        'model' =>$data['model'],
        'name' =>$data['name'],
        'quantity' =>$data['quantity'],
        
        );
    
    }
    
    // Exporting the CSV
    foreach($data as $row)
    {
        fputcsv($output, $row); // here you can change delimiter/enclosure
    }
    
    fclose($output); // Closing the File
    
    Salin selepas log masuk
    Pengawal hanya menyelesaikan URL eksport ke paparan supaya ia boleh dipautkan dengan butang.

    1.2 Pandangan

    Navigasi ke (katalog kedai opencart anda)/admin/view/template/catalog/product_list.tpl.

    Cari HTML: <div class="buttons">. 🎜Tambahkan butang eksport HTML: 🎜 🎜 rrreee 🎜Pergi ke panel pentadbir kedai anda dan pilih Katalog>Produk dan anda akan melihat butang Eksport seperti yang ditunjukkan dalam tangkapan skrin di bawah. 🎜 🎜Buat alat OpenCart untuk mengeksport fail CSV produk🎜🎜2 🎜 🎜2.1 Pengawal🎜 🎜 🎜 Navigasi ke (katalog kedai opencart anda)/admin/controller/catalog/product.. 🎜 🎜Buat fungsi awam baharu, iaitu public function exportCSV(){ }. 🎜 🎜Di dalam fungsi, cuma tambah baris kod berikut. 🎜🎜 🎜 🎜 rrreee 🎜Inilah! Anda telah mencipta alat eksport produk untuk panel OpenCart anda. Cuma klik butang eksport dan fail CSV akan dimuat turun ke komputer anda. Anda boleh menambah seberapa banyak lajur yang anda perlukan. 🎜 🎜Kesimpulan🎜 🎜“Masa adalah emas.” Sebagai seorang usahawan atau pemilik perniagaan, anda tidak mahu membuang masa berharga anda. Apabila bercakap tentang perisian, usahawan sentiasa mencari cara terbaik dan paling berkesan untuk menyelesaikan kerja. 🎜 🎜Jadi, dalam tutorial ini, kami mencipta alat perniagaan yang membantu mengeksport maklumat produk daripada OpenCart dengan cara yang lebih pantas dan mudah menggunakan format data CSV. Saya juga akan menulis tutorial tentang "Import CSV" supaya kami boleh menambah dan mengemas kini maklumat dengan mudah mengikut keperluan kami. 🎜 🎜Saya harap anda mendapati artikel ini berguna untuk perniagaan anda. Sila berikan maklum balas berharga anda di bawah. Terima kasih! 🎜

Atas ialah kandungan terperinci Cipta alat OpenCart untuk mengeksport fail CSV produk. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Cadangan popular
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan