Hoe verwijdert u automatisch productafbeeldingen in WooCommerce, met het product
Ook al is WooCommerce een zeer robuust winkelplatform dat de afgelopen jaren veel ontwikkeld heeft, er ontbreken nog steeds veel opties. Eén daarvan is de mogelijkheid om de productafbeeldingen in WooCommerce automatisch te verwijderen wanneer een product wordt verwijderd.
Om precies te zijn: wanneer we een product uit WooCommerce verwijderen, blijven de bijbehorende afbeeldingen op de server staan. Een online winkel met duizenden producten zal een aanzienlijk aantal afbeeldingen verzamelen. Als deze foto's niet samen met de producten worden verwijderd, zal dit na verloop van tijd een aanzienlijke hoeveelheid opslagruimte in beslag nemen.
Wanneer binnen Woocommerce er een nieuw product wordt toegevoegd, wordt de presentatieafbeelding minimaal drie keer gedupliceerd – vier keer, in verschillende maten. Er zijn er enkele themes van Woo waarmee u maximaal 10 kopieën van de originele afbeelding kunt maken, voor verschillende lay-outs.
De beste oplossing voor het optimaliseren van de ruimte die de productafbeeldingen op de webhostingserver innemen, is dat ze samen met de producten uit de online winkel worden verwijderd.
Hoe u productafbeeldingen in WooCommerce automatisch verwijdert wanneer u producten verwijdert
Ik heb een online winkel die vlas verkoopt media library 23.567 afbeeldingen, de meeste WooCommerce-producten. Als ik de producten zou verwijderen die niet meer op voorraad zijn, blijven de afbeeldingen in de mediabibliotheek (op de server) staan.

Om de productafbeeldingen in WooCommerce automatisch te verwijderen, samen met de producten, hoef je alleen maar de volgende code toe te voegen aan het function.php-bestand van het actieve thema:
*Het wordt ten zeerste aanbevolen om eerst een back-up van de map te maken wp-content/uploads.
// 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 );
}
}
}
Het is goed om te weten dat na het opslaan van bovenstaande code in functions.php, productafbeeldingen worden automatisch verwijderd, samen met het product. Wanneer de producten worden verwijderd en uit “Trash“.

Samen met de producten die uit de online winkel zijn verwijderd Er zijn ook 3336 afbeeldingen verwijderd geassocieerd. Een nogal belangrijk aantal, dat onnodige ruimte op de webhostingserver zou hebben ingenomen.
- Hoe u de pagina 'Er zijn geen producten gevonden die overeenkomen met uw selectie' in WooCommerce - Verkoop in online winkels optimaliseert, aanpast
- Hoe enorme WP_OPTIONS te reinigen in SQL - Transiënten, WPSEO_SITEMAP _CACHE_VALIDATOR
- Hoe snel alle opdrachten (bestellingen) in WooCommerce te verwijderen [SQL -tips]
- Herstel enorme SQL -tabellen: wp_actionscheduler_actions & wp_actionscheduler_logs [WooCommerce-tips]
- Er staat impliciet “Verzenden naar ander adres” op de pagina van Checkout a Woocommerce
Gebruik deze optie niet als u voor meerdere producten dezelfde afbeeldingen gebruikt. Ze worden automatisch verwijderd als een product waarin ze aanwezig zijn, wordt verwijderd.
Hoe verwijdert u automatisch productafbeeldingen in WooCommerce, met het product
Wat is nieuw
Over Stealth
Gepassioneerd door technologie schrijf ik met plezier op StealthSettings.com sinds 2006. Ik heb veel ervaring met besturingssystemen: macOS, Windows en Linux, maar ook met programmeertalen en bloggingplatforms (WordPress) en voor webshops (WooCommerce, Magento, PrestaShop).
Bekijk alle berichten van StealthMogelijk bent u ook geïnteresseerd in...
3 gedachten over “Hoe verwijdert u automatisch productafbeeldingen in WooCommerce, met het product”
Dit heeft geholpen, bedankt!
Heel erg bedankt, je hebt een groot probleem voor mij opgelost.
Precies wat ik zocht of nodig had 👍
De plug-in die ik eerder gebruikte, werkte niet zo betrouwbaar als dit fragment
Hartelijk dank, dat scheelt mij een hoop werk en veel tijd