Cara Menghapus Gambar WooCommerce yang Tidak Digunakan dari Pasar Dokan Anda
Diterbitkan: 2022-04-06Mencari solusi untuk menghapus gambar saat melakukan penghapusan massal produk WooCommerce?
Saat menjalankan bisnis online, Anda harus waspada. Anda harus mengetahui segala sesuatu seperti tren mode, tren baru, dan produk usang dari toko Anda. Anda dapat terus memperbarui situs Anda dengan produk terbaru yang kemungkinan besar akan dijual.
Untuk menjaga toko Anda tetap up-to-date, terkadang Anda perlu menghapus beberapa produk yang sudah lama tidak terjual atau produk yang keluar dari musim. Untuk toko WooCommerce, Anda dapat dengan mudah melakukan ini menggunakan pengaturan default WooCommerce atau menjalankan perintah SQL.
Tetapi masalahnya adalah WordPress tidak menghapus media saat menghapus posting. Ini bisa menjadi masalah besar untuk situs eCommerce atau pasar yang memiliki ribuan gambar berkualitas tinggi.
Di blog berikut, Anda akan mempelajari cara menghapus gambar WooCommerce dari galeri saat menghapus produk untuk satu toko dan pasar multivendor.
Mengapa Anda Harus Menghapus Gambar Produk WooCommerce setelah Menghapus Produk Itu
Anda perlu mengunggah banyak produk dengan ribuan gambar terkait untuk toko eCommerce Anda. Dan terkadang menghapus beberapa produk dari situs Anda karena beberapa alasan juga sangat normal. Setelah menghapus produk jika Anda memeriksa perpustakaan media Anda, Anda akan menemukan semua gambar yang digunakan untuk produk Anda yang dihapus.
Ini berarti bahwa setelah menghapus produk di WooCommerce, sistem akan menghapus sebagian besar data yang terkait dengannya. Tapi gambar produk itu akan tetap ada di database dan folder media. Ini akan membuat situs Anda terlalu berat.
Manfaat Menghapus Gambar Produk setelah Menghapus Produk Itu |
1. Tingkatkan kinerja situs |
2. Tingkatkan kecepatan penyimpanan dengan meminimalkan penyimpanan server |
3. Jaga agar situs tetap ringan |
4. Buat lebih banyak ruang untuk mengunggah lebih lanjut |
5. Optimalkan database toko |
Untuk pemilik pasar, skenarionya sedikit lebih rumit. Sangat sulit untuk memantau semua file media yang diunggah oleh vendor yang berbeda. Karena vendor mungkin mengunggah sejumlah besar produk setiap hari dan juga menghapus banyak produk yang sudah ada. Pada gilirannya, gambar produk mereka dapat mengurangi ruang server Anda yang tidak baik untuk kinerja situs Anda.
Dalam hal ini, akan bermanfaat untuk menghapus semua gambar unggulan dan gambar galeri jika pengguna/vendor menghapus produk apa pun.
Tetapi masalah lain dapat muncul di sana jika seseorang menggunakan gambar yang sama di beberapa posting.
Nah, hari ini kami akan menunjukkan solusi untuk mengatasi semua kendala tersebut.
Bagaimana Cara Menghapus Gambar Woocommerce Setelah Menghapus Produk?

Di sini, kita akan menggunakan hook: before_delete_post
. Periksa detail tentang kait ini di sini.
Ikuti langkah-langkah di bawah ini untuk menghapus gambar yang tidak digunakan selama penghapusan massal produk WooCommerce:
- Langkah1: Buat Tema Anak
- Langkah2: Terapkan Kode Di Dalam Tema Anak Anda
- Step3: Periksa Hasil untuk Toko Online Anda
Langkah 1: Buat Tema Anak
Pertama, buat tema anak. Anda perlu memodifikasi tema anak ini karena peningkatan ini terkait dengan tema.

Anda dapat mengikuti panduan ini untuk membuat tema anak dengan mudah. Atau gunakan plugin WordPress apa pun untuk membuat tema anak.
Langkah 2: Terapkan Kode Di Dalam Tema Anak Anda
Selanjutnya, buka function.php tema anak Anda dan rekatkan kode di bawah ini-
// Automatically Delete Woocommerce Images After Deleting a Product add_action( 'before_delete_post', 'delete_product_images', 10, 1 ); function delete_product_images( $post_id ) { $product = wc_get_product( $post_id ); if ( !$product ) { return; } $featured_image_id = $product->get_image_id(); $image_galleries_id = $product->get_gallery_image_ids(); if( !empty( $featured_image_id ) ) { wp_delete_post( $featured_image_id ); } if( !empty( $image_galleries_id ) ) { foreach( $image_galleries_id as $single_image_id ) { wp_delete_post( $single_image_id ); } } }
Langkah 3: Periksa Hasil untuk Toko Online Anda
Setelah memasukkan kode simpan function.php. Sekarang buka toko WooCommerce Anda dan hapus produk. Ini akan menghapus gambar terkait juga.

Cara Menghapus Gambar Produk WooCommerce di Dokan Marketplace
Sekarang kami akan menunjukkan cara menghapus gambar Woocommerce setelah menghapus produk di dalam pasar. Ini membantu Anda mengosongkan ruang server dan mengurangi kekacauan perpustakaan media.

Dalam hal ini, rekatkan cuplikan kode di bawah ini di dalam file functions.php tema Anda-
<?php add_action( 'before_delete_post', function( $id ) { $product = wc_get_product( $id ); if ( ! $product ) { return; } $all_product_ids = []; $product_thum_id_holder = []; $gallery_image_id_holder = []; $thum_id = get_post_thumbnail_id( $product->get_id() ); if ( function_exists( 'dokan' ) ) { $vendor = dokan()->vendor->get( dokan_get_current_user_id() ); if ( ! $vendor instanceof WeDevs\Dokan\Vendor\Vendor || $vendor->get_id() === 0 ) { return; } $products = $vendor->get_products(); if ( empty( $products->posts ) ) { return; } foreach ( $products->posts as $post ) { array_push( $all_product_ids, $post->ID ); } } else { $args = [ 'posts_per_page' => '-1' ]; $products = wc_get_products( $args ); foreach ( $products as $product ) { array_push( $all_product_ids, $product->get_id() ); } } foreach ( $all_product_ids as $product_id ) { if ( intval( $product_id ) !== intval( $id ) ) { array_push( $product_thum_id_holder, get_post_thumbnail_id( $product_id ) ); $wc_product = wc_get_product( $product_id ); $gallery_image_ids = $wc_product->get_gallery_image_ids(); if ( empty( $gallery_image_ids ) ) { continue; } foreach ( $gallery_image_ids as $gallery_image_id ) { array_push( $gallery_image_id_holder, $gallery_image_id ); } } } if ( ! in_array( $thum_id, $product_thum_id_holder ) && ! in_array( $thum_id, $gallery_image_id_holder ) ) { wp_delete_attachment( $thum_id, true ); if ( empty( $thum_id ) ) { return; } $gallery_image_ids = $product->get_gallery_image_ids(); if ( empty( $gallery_image_ids ) ) { return; } foreach ( $gallery_image_ids as $gallery_image_id ) { wp_delete_attachment( $gallery_image_id, true ); } } } );
Sekarang, setiap kali vendor menghapus produk dari pasar, gambar produk terkait akan secara otomatis hilang dari perpustakaan media.
Bonus: Saat Anda Perlu Menghapus Produk WooCommerce Secara Massal

Sebaiknya hapus Gambar yang tidak digunakan dari galeri media Anda. Gambar-gambar ini tidak menambah nilai toko Anda. Melainkan menghambat kinerja situs Anda. Tetapi pertama-tama, Anda perlu memutuskan produk mana yang perlu Anda hapus dari toko online Anda.
Kami telah menyoroti jenis produk yang mungkin perlu Anda hapus secara massal-
- Produk musiman
- Produk siklik
- Produk kehabisan stok
- Produk tidak laku
- produk uji
Produk musiman: Beberapa produk mungkin kehilangan permintaannya setelah jangka waktu tertentu. Anda dapat menambahkan produk musim dingin baru, misalnya, di toko Anda yang menargetkan periode waktu terdingin dalam setahun. Tetapi setelah datangnya musim semi, permintaan akan produk semacam itu akan turun dan segera mereka akan benar-benar keluar dari tren. Dan Anda perlu menghapus produk WooCommerce secara massal dari toko Anda.
Produk siklik: Persediaan perlu diisi ulang dengan produk baru secara berkala. Misalnya, setelah festival khusus, Anda harus menghapus produk lama dari toko dan mengunggah yang baru.
Out of stock product : Produk yang sudah tidak tersedia di stock dan kemungkinan untuk restock lagi kecil, akan lebih baik produk tersebut disingkirkan.
Produk tidak laris: Jika Anda memiliki produk dalam stok yang tidak umum dijual, Anda harus menghapus produk tersebut dari toko Anda. Karena produk ini hanya akan meningkatkan tanggung jawab Anda dan membuang-buang ruang Anda.
Produk uji: Berkali-kali sebelum meluncurkan produk asli, Anda harus memperkenalkan banyak produk uji untuk melihat apakah produk itu berfungsi dengan baik. Setelah Anda meluncurkan produk utama, lebih baik untuk menghapus produk uji.
Sumber Terkait: Jenis Produk yang Dapat Anda Buat Menggunakan WooCommerce!
Ke Anda
Mungkin ada beberapa situasi ketika Anda perlu menghapus produk WooCommerce secara massal. Dan itu tidak akan sulit sebagai pengguna WordPress. Tetapi Anda menghadapi kesulitan ketika setelah menghapus suatu produk, gambar produk terkait masih tetap berada di perpustakaan media.
Panduan di atas membantu Anda menyertakan proses otomatis untuk menghapus gambar saat menghapus produk di WooCommerce.
Apakah Anda masih memiliki pertanyaan tentang cara menghapus produk dan gambar produk WooCommerce secara massal dengan kait tindakan? Beri tahu kami di komentar!