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 en 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 de 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
Eliminar imagen de producto de WooCommerce

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.

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

Apasionado de la tecnología, me gusta probar y escribir tutoriales sobre sistemas operativos. macOS, Linux, Windowsacerca de WordPress, WooCommerce y configurar servidores web LEMP (Linux, NGINX, MySQL y PHP). escribo en StealthSettings.com desde 2006, y unos años más tarde comencé a escribir en iHowTo.Tips tutoriales y noticias sobre dispositivos en el ecosistema Apple: iPhoneiPad Apple Reloj, HomePod, iMac, MacBook, AirPods y accesorios.

Deja un comentario