Kaip automatiškai ištrinti produkto vaizdus WooCommerce, kartu su preke

Net jei WooCommerce yra labai tvirta apsipirkimo platforma, kuri pastaraisiais metais daug vystėsi, vis dar trūksta daug galimybių. Viena iš jų yra galimybė automatiškai ištrinti gaminio vaizdus WooCommerce kai produktas ištrinamas.

Tiksliau, kai ištriname prekę iš WooCommerce, su juo susieti vaizdai lieka serveryje. Internetinėje parduotuvėje su tūkstančiais prekių bus surinkta nemažai vaizdų. Jei šios nuotraukos nebus ištrintos kartu su produktais, laikui bėgant tai užims daug vietos saugykloje.

Kai įeina WooCommerce pridedama nauja prekė, bent jau pristatymo vaizdas bus dubliuojamas bent tris - keturis kartus, skirtingais dydžiais. Yra šiek tiek themes Woo, kuris gali padaryti iki 10 originalaus vaizdo kopijų įvairiems išdėstymams.

Geriausias sprendimas optimizuoti prekių vaizdų užimamą vietą žiniatinklio prieglobos serveryje – juos ištrinti kartu su prekėmis, pašalintomis iš internetinės parduotuvės.

Kaip automatiškai ištrinti produkto vaizdus WooCommerce kai ištrinate produktus

Turiu internetinę parduotuvę, kurioje yra linų media library 23.567 XNUMX vaizdai, dauguma produktų WooCommerce. Jei ištrinčiau produktus, kurių sandėlyje nebėra, vaizdai liktų medijos bibliotekoje (serveryje).

Produkto vaizdai medijos bibliotekoje
Produkto vaizdai medijos bibliotekoje

Norėdami automatiškai ištrinti gaminio vaizdus WooCommerce, kartu su produktais, tereikia pridėti šį kodą į aktyvios temos functions.php failą:

*Primygtinai rekomenduojama iš anksto pasidaryti atsarginę aplanko kopiją 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 );
        }
    }
}

Verta žinoti, kad išsaugojus aukščiau nurodytą kodą functions.php, produktų vaizdai bus automatiškai ištrinti, kartu su preke. Kai produktai taip pat ištrinami iš "Trash".

Kaip automatiškai ištrinti produkto vaizdus WooCommerce, kartu su preke
panaikinti WooCommerce Produkto vaizdas

Kartu su išimtomis iš internetinės parduotuvės prekėmis Taip pat buvo ištrinti 3336 vaizdai susiję. Gana svarbus skaičius, kuris būtų užėmęs nereikalingą vietą žiniatinklio prieglobos serveryje.

Nenaudokite šios parinkties, jei naudojate tuos pačius vaizdus keliems produktams. Jie bus automatiškai ištrinti, jei bus pašalintas produktas, kuriame jie yra.

Technologijų entuziastas, nuo 2006 metų su malonumu rašau „StealthSettings.com“. Turiu išsamią patirtį su operacinėmis sistemomis: macOS, „Windows“ ir „Linux“, taip pat programavimo kalbomis ir blogo platformomis („WordPress“) bei internetinės parduotuvės platformomis („WooCommerce“, „Magento“, „PrestaShop“).

kaip » WordPress » Kaip automatiškai ištrinti produkto vaizdus WooCommerce, kartu su preke

3 mintys apie „Kaip automatiškai ištrinti produkto vaizdus WooCommerce, kartu su preke"

  1. Genau buvo ich gesucht bzw. reikia habe 👍

    Das PlugIn das ich bisher genutzt habe, funktionierte nicht so versältigte wie dieses Snippet

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

    atsakymas
Palikite komentarą