Hoe productafbeeldingen automatisch te verwijderen in WooCommerce, samen met het product

zelfs indien WooCommerce is een zeer robuust winkelplatform dat zich de afgelopen jaren enorm heeft ontwikkeld, er ontbreken nog veel opties. Een daarvan is de mogelijkheid om de productafbeeldingen automatisch te verwijderen WooCommerce wanneer een product wordt verwijderd.

Meer precies, wanneer we een product verwijderen uit WooCommerce, blijven de bijbehorende afbeeldingen op de server staan. Een online winkel met duizenden producten verzamelt een aanzienlijk aantal afbeeldingen. 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 een nieuw product wordt toegevoegd, de afbeelding van de presentatie wordt in ieder geval drie tot vier keer gedupliceerd, in verschillende formaten. Er zijn een paar themes door Woo die tot 10 kopieën van de originele afbeelding kan maken, voor verschillende lay-outs.

De beste oplossing voor het optimaliseren van de ruimte die wordt ingenomen door de productafbeeldingen op de webhostingserver, is om ze samen met de producten uit de online winkel te verwijderen.

Hoe productafbeeldingen automatisch te verwijderen in WooCommerce wanneer u producten verwijdert

Ik heb een online winkel met vlas media library 23.567 afbeeldingen, de meeste producten WooCommerce. Als ik de producten zou verwijderen die niet meer op voorraad zijn, blijven de afbeeldingen in de mediabibliotheek (op de server).

Productafbeeldingen in mediabibliotheek
Productafbeeldingen in mediabibliotheek

Om de productafbeeldingen automatisch te verwijderen in WooCommerce, samen met de producten, hoef je alleen maar de volgende code toe te voegen aan het bestand functions.php van het actieve thema:

*Het wordt ten zeerste aanbevolen om vooraf 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 ook worden verwijderd uit "Trash'.

Hoe productafbeeldingen automatisch te verwijderen in WooCommerce, samen met het product
Verwijder WooCommerce Product Image

Samen met de producten verwijderd uit de online winkel Er werden ook 3336 afbeeldingen verwijderd geassocieerd. Een nogal belangrijk nummer, dat onnodige ruimte op de webhostingserver zou hebben ingenomen.

Gebruik deze optie niet als u dezelfde afbeeldingen voor meerdere producten gebruikt. Ze worden automatisch verwijderd als een product waarin ze aanwezig zijn, wordt verwijderd.

Gepassioneerd door techniek schrijf ik met plezier verder StealthSettings.com sinds 2006. Ik heb uitgebreide ervaring met besturingssystemen: macOS, Windows şi Linux, maar ook in programmeertalen en blogplatforms (WordPress) en voor online winkels (WooCommerce, Magento, PrestaShop).

Hoe werkt het? » WordPress » Hoe productafbeeldingen automatisch te verwijderen in WooCommerce, samen met het product

3 gedachten over "Hoe productafbeeldingen automatisch te verwijderen in WooCommerce, samen met het product"

  1. Genau was ich gesucht bzw. habe nodig 👍

    De plug-in die beschikbaar is, werkt niet zo veelzijdig als die van deze snippet

    Vielen Dank, das erspart mir einen Haufen Arbeit en viel Zeit

    Antwoorden
Laat een bericht achter