Come eliminare automaticamente le immagini dei prodotti in WooCommerce, insieme al prodotto

anche se WooCommerce è una piattaforma di shopping molto robusta che si è sviluppata molto negli ultimi anni, ci sono ancora molte opzioni mancanti. Uno di questi è la possibilità di eliminare automaticamente le immagini del prodotto WooCommerce quando un prodotto viene eliminato.

Più precisamente, quando eliminiamo un prodotto da WooCommerce, le immagini ad esso associate rimangono sul server. Un negozio online con migliaia di prodotti raccoglierà un numero significativo di immagini. Se queste immagini non vengono eliminate insieme ai prodotti, nel tempo occuperà una notevole quantità di spazio di archiviazione.

Quando dentro WooCommerce viene aggiunto un nuovo prodotto, almeno l'immagine di presentazione verrà duplicata almeno tre - quattro volte, in dimensioni diverse. Ci sono alcuni themes di Woo che può realizzare fino a 10 copie dell'immagine originale, per diversi layout.

La soluzione migliore per ottimizzare lo spazio occupato dalle immagini dei prodotti sul server del web hosting è quella di eliminarle insieme ai prodotti rimossi dal negozio online.

Come eliminare automaticamente le immagini dei prodotti in WooCommerce quando elimini i prodotti

Ho un negozio online che ha il lino media library 23.567 immagini, la maggior parte dei prodotti WooCommerce. Se dovessi eliminare i prodotti che non sono più disponibili, le immagini rimarrebbero nella libreria multimediale (sul server).

Immagini del prodotto nella libreria multimediale
Immagini del prodotto nella libreria multimediale

Per eliminare automaticamente le immagini del prodotto in WooCommerce, insieme ai prodotti, non devi fare altro che aggiungere il seguente codice al file functions.php del tema attivo:

*Si consiglia vivamente di eseguire prima un backup della cartella 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 );
        }
    }
}

È bene sapere che dopo aver salvato il codice sopra in functions.php, le immagini del prodotto verranno eliminate automaticamente, insieme al prodotto. Quando i prodotti vengono cancellati anche da "Trash".

Come eliminare automaticamente le immagini dei prodotti in WooCommerce, insieme al prodotto
Elimina WooCommerce Immagine del prodotto

Insieme ai prodotti rimossi dal negozio online Sono state eliminate anche 3336 immagini associato. Un numero piuttosto importante, che avrebbe occupato spazio inutile sul server del web hosting.

Non utilizzare questa opzione se utilizzi le stesse immagini per più prodotti. Saranno cancellati automaticamente se un prodotto in cui sono presenti viene rimosso.

Appassionato di tecnologia, scrivo con piacere su StealthSettings.com dal 2006. Ho un'ampia esperienza nei sistemi operativi: macOS, Windows e Linux, nonché nei linguaggi di programmazione e nelle piattaforme di blogging (WordPress) e per i negozi online (WooCommerce, Magento, PrestaShop).

Come » WordPress » Come eliminare automaticamente le immagini dei prodotti in WooCommerce, insieme al prodotto

3 pensieri su "Come eliminare automaticamente le immagini dei prodotti in WooCommerce, insieme al prodotto"

  1. Genau era ich gesucht bzw. serve 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

    Rispondi
Lascia un tuo commento