Jak automatycznie usuwać zdjęcia produktów w WooCommercewraz z produktem

choćby WooCommerce to bardzo solidna platforma zakupowa, która bardzo się rozwinęła w ostatnich latach, wciąż brakuje wielu opcji. Jedną z nich jest możliwość automatycznego usuwania zdjęć produktów WooCommerce gdy produkt zostanie usunięty.

Dokładniej, kiedy usuwamy produkt z WooCommerce, powiązane z nim obrazy pozostają na serwerze. Sklep internetowy z tysiącami produktów zgromadzi pokaźną liczbę zdjęć. Jeśli te zdjęcia nie zostaną usunięte razem z produktami, z czasem zajmie to znaczną ilość miejsca.

Kiedy w WooCommerce zostanie dodany nowy produkt, przynajmniej obraz prezentacji zostanie zduplikowany co najmniej trzy - cztery razy, w różnych rozmiarach. Tam jest trochę themes autorstwa Woo, który może utworzyć do 10 kopii oryginalnego obrazu dla różnych układów.

Najlepszym sposobem na optymalizację miejsca zajmowanego przez zdjęcia produktów na serwerze hostingowym jest ich usunięcie razem z produktami usuwanymi ze sklepu internetowego.

Jak automatycznie usuwać zdjęcia produktów w WooCommerce kiedy usuniesz produkty

Mam sklep internetowy, który ma len media library 23.567 XNUMX obrazów, większość produktów WooCommerce. Gdybym miał usunąć produkty, których nie ma już w magazynie, obrazy pozostałyby w bibliotece multimediów (na serwerze).

Obrazy produktów w Bibliotece multimediów
Obrazy produktów w Bibliotece multimediów

Aby automatycznie usuwać obrazy produktów w WooCommerce, wraz z produktami, wystarczy dodać następujący kod do pliku functions.php aktywnego motywu:

*Zdecydowanie zaleca się najpierw wykonanie kopii zapasowej folderu 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 );
        }
    }
}

Warto wiedzieć, że po zapisaniu powyższego kodu w functions.php, zdjęcia produktów zostaną automatycznie usuniętewraz z produktem. Gdy produkty są również usuwane z „Trash".

Jak automatycznie usuwać zdjęcia produktów w WooCommercewraz z produktem
Usuń WooCommerce Obraz produktu

Łącznie z produktami usuniętymi ze sklepu internetowego Usunięto również 3336 obrazów powiązany. Dość ważny numer, który zajmowałby niepotrzebne miejsce na serwerze hostingowym.

Nie używaj tej opcji, jeśli używasz tych samych zdjęć dla kilku produktów. Zostaną one usunięte automatycznie, jeśli produkt, w którym się znajdują, zostanie usunięty.

Pasjonat technologii, z przyjemnością piszę dalej StealthSettings.com od 2006 roku. Mam duże doświadczenie w systemach operacyjnych: macOS, Windows şi Linux, ale także w językach programowania i platformach blogowych (WordPress) oraz dla sklepów internetowych (WooCommerce, Magento, PrestaShop).

jak » WordPress » Jak automatycznie usuwać zdjęcia produktów w WooCommercewraz z produktem

3 przemyślenia na temat „Jak automatycznie usuwać zdjęcia produktów w WooCommercewraz z produktem"

  1. Genau był ich gesucht bzw. potrzebuje 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

    Odpowiedz
Zostaw komentarz