Hvordan sletter du automatisk produktbilder i WooCommerce, med produktet

Selv om WooCommerce er en veldig robust handleplattform som har utviklet seg mye de siste årene, mangler det fortsatt mange alternativer. En av disse er muligheten for å automatisk slette produktbildene i WooCommerce når et produkt slettes.

Mer presist, når vi sletter et produkt fra WooCommerce, forblir bildene knyttet til det på serveren. En nettbutikk med tusenvis av produkter vil samle et betydelig antall bilder. Hvis disse bildene ikke blir slettet sammen med produktene, vil det over tid ta opp en betydelig mengde lagringsplass.

Når du er inne WooCommerce et nytt produkt legges til, vil minst presentasjonsbildet dupliseres minst tre ganger – fire ganger, i forskjellige størrelser. Det er noen themes av Woo som kan lage opptil 10 kopier av originalbildet, for forskjellige oppsett.

Den beste løsningen for å optimalisere plassen som opptar produktbildene på webhotellserveren er at de slettes sammen med produktene som fjernes fra nettbutikken.

Slik sletter du automatisk produktbilder i WooCommerce når du sletter produkter

Jeg har en nettbutikk som har lin media library 23 567 bilder, de fleste WooCommerce-produkter. Hvis jeg skulle slette produktene som ikke lenger er på lager, blir bildene liggende i mediebiblioteket (på serveren).

Produktbilder i mediebiblioteket
Produktbilder i mediebiblioteket

For å automatisk slette produktbildene i WooCommerce, sammen med produktene, er alt du trenger å gjøre å legge til følgende kode i functions.php-filen til det aktive temaet:

*Det anbefales sterkt å ta en sikkerhetskopi av mappen først 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 );
        }
    }
}

Det er godt å vite at etter å ha lagret koden ovenfor i functions.php, produktbilder slettes automatisk, sammen med produktet. Når produktene er slettet og fra “Trash“.

Hvordan sletter du automatisk produktbilder i WooCommerce, med produktet
Slett WooCommerce produktbilde

Sammen med produktene fjernet fra nettbutikken 3336 bilder ble også slettet assosiert. Et ganske viktig tall, som ville ha opptatt unødvendig plass på webhotellserveren.

Ikke bruk dette alternativet hvis du bruker de samme bildene for flere produkter. De slettes automatisk hvis et produkt de er tilstede i fjernes.

Lidenskapelig om teknologi skriver jeg med glede på stealthsetts.com som starter med 2006. Jeg har en rik opplevelse innen operativsystemer: macOS, Windows og Linux, men også innen programmeringsspråk og bloggplattformer (WordPress) og for nettbutikker (WooCommerce, Magento, Presashop).

Hjem Din kilde til IT -opplæringsprogrammer, nyttige tips og nyheter. Hvordan sletter du automatisk produktbilder i WooCommerce, med produktet

3 Tanker om “Hvordan sletter du automatisk produktbilder i WooCommerce, med produktet”

  1. Akkurat det jeg lette etter eller trengte 👍

    Programtillegget jeg brukte tidligere fungerte ikke like pålitelig som denne kodebiten

    Tusen takk, det sparer meg for mye arbeid og mye tid

    Svar
Legg igjen en kommentar