Cómo eliminar automáticamente imágenes de productos en WooCommerce, junto con el producto

Aunque WooCommerce es una plataforma de compras muy robusta que se ha desarrollado mucho en los últimos años, todavía faltan muchas opciones. Una de ellas es la posibilidad de eliminar automáticamente las imágenes del producto. WooCommerce cuando se elimina un producto.

Más precisamente, cuando eliminamos un producto de WooCommerce, las imágenes asociadas a él permanecen en el servidor. Una tienda online con miles de productos reunirá una cantidad importante de imágenes. Si estas imágenes no se eliminan junto con los productos, con el tiempo ocuparán una cantidad significativa de espacio de almacenamiento.

Cuando en WooCommerce se agrega un nuevo producto, al menos la imagen de presentación se duplicará al menos tres o cuatro veces, en diferentes tamaños. Hay algunos themes by Woo que puede hacer hasta 10 copias de la imagen original, para diferentes diseños.

La mejor solución para optimizar el espacio que ocupan las imágenes de los productos en el servidor de alojamiento web es eliminarlas junto con los productos eliminados de la tienda online.

Cómo eliminar automáticamente imágenes de productos en WooCommerce cuando eliminas productos

Tengo una tienda online que tiene lino. media library 23.567 imágenes, la mayoría de los productos WooCommerce. Si tuviera que eliminar los productos que ya no están en stock, las imágenes permanecerían en la biblioteca de medios (en el servidor).

Imágenes de productos en la biblioteca de medios
Imágenes de productos en la biblioteca de medios

Para eliminar automáticamente las imágenes de productos en WooCommerce, junto con los productos, todo lo que tienes que hacer es agregar el siguiente código al archivo functions.php del tema activo:

*Es muy recomendable hacer una copia de seguridad de la carpeta de antemano 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 );
        }
    }
}

Es bueno saber que después de guardar el código anterior en functions.php, las imágenes del producto se eliminarán automáticamente, junto con el producto. Cuando los productos también se eliminan de "Trash".

Cómo eliminar automáticamente imágenes de productos en WooCommerce, junto con el producto
Borrar WooCommerce Imagen del producto

Junto con los productos retirados de la tienda online También se eliminaron 3336 imágenes. asociado. Un número bastante importante, que habría ocupado espacio innecesario en el servidor de alojamiento web.

No utilice esta opción si utiliza las mismas imágenes para varios productos. Se eliminarán automáticamente si se elimina un producto en el que están presentes.

Apasionado por la tecnología, escribo con gusto en StealthSettings.com desde el año 2006. Tengo una amplia experiencia en sistemas operativos: macOS, Windows y Linux, así como en lenguajes de programación y plataformas de blogs (WordPress) y para tiendas en línea (WooCommerce, Magento, PrestaShop).

Cómo » WordPress » Cómo eliminar automáticamente imágenes de productos en WooCommerce, junto con el producto

3 pensamientos sobre "Cómo eliminar automáticamente imágenes de productos en WooCommerce, junto con el producto"

  1. Genau fue ich gesucht bzw. necesita 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

    Responder
Deja un comentario