Eliminar las imágenes de un producto cuando se elimina en WooCommerce

LucusHost, el mejor hosting

Una tienda online, es habitual que guarde varios archivos como vídeos o fotografías de los productos, ya que son la base de la presentación del producto. El problema viene, cuando la tienda lleva almacenando productos varios años, que todas esas imágenes no se suelen borrar(las de los productos agotados o que no se usan).

Esto a la largo plazo es un problema por los siguientes motivos:

  • Ahorro de espacio en el hosting: Las imágenes pueden consumir un espacio considerable en tu servidor, y si tienes un hosting con un límite de almacenamiento, esto puede ser un problema.
  • Optimización del ecommerce: Un directorio limpio y organizado facilita las copias de seguridad y la migración del sitio.
  • Seguridad: Las imágenes no utilizadas pueden ser un vector de ataque si contienen vulnerabilidades o si un atacante puede utilizarlas de alguna manera.

Por todo esto, es recomendable ir eliminando todas estas fotografías de producto. El problema es todo el tiempo que tenemos que invertir para borrarlas de forma manual. Es por eso que en este tutorial vamos a ver cómo borrarlas de forma automática si no las utilizamos en la web.

Mediante código

La forma más optima de realizarlo es añadiendo el siguiente fragmento de código en nuestro fichero function.php de nuestro child theme o bien en un plugin de funcionalidades como explico aquí:

function dl_borrar_medio_asociado($post_id) {
    $attachments = get_posts(array(
        'post_type'      => 'attachment',
        'posts_per_page' => -1,
        'post_status'    => 'any',
        'post_parent'    => $post_id
    ));

    foreach ($attachments as $attachment) {
        if (false === wp_delete_attachment($attachment->ID, true)) {
            wp_die('Error al borrar el archivo.');
        }
    }
}
add_action('before_delete_post', 'dl_borrar_medio_asociado');

Una vez insertado en nuestra tienda online, al borrar un producto, todas las imágenes y medios asociados al mismo como la imagen principal o las fotos insertadas en el texto se borrarán. Eso sí, el producto se debe borrar definitivamente, no estar en la papelera.

Mediante plugin

Es otra forma de hacerlo si os da miedo el código o no entendéis. Aun así, la mejor opción es la anterior.

Usaremos el plugin Media Cleaner de Jordy Meow, disponible de forma gratuita en el repositorio de WordPress o en este enlace. Es plugin permite escanear nuestro sitio y detectar todas las imagenes y medios que no se usan en nuestro WordPress y en consecuencia borrarlas.

Para ello, una vez instalado el plugin, en el administrador de WordPress tendremos un menú de Meow Apps > Media Cleaner. Una vez dentro lo configuraremos de la siguiente forma y haremos clic en Access Media Cleaner Dashboard.

eliminar imagenes productos cuando se borra producto

Una vez dentro, haremos clic en el botón de Scan y por fin nos saldrá un listado con todas las fotografías que no usamos en nuestro WordPress. Podremos elegir cuáles borrar y cuáles no:

borrar imagenes cuando no se usan woocommerce

¿Súper sencillo no? Además puedes ver lo que ocupa cada archivo.

Y esto sería todo por el tutorial de hoy, recuerda que cualquier duda la soluciono en comentarios. Recordaros por último algunos de mi servicios como migrar de Prestashop a WooCommerce o creación de tiendas online.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)
mailerlite diegol

Especialista en Comercio electrónico con Woocommerce. Te ayudo a crear, gestionar y publicitar tu Ecommerce en función de tu sector y público objetivo. Puedes encontrarme en Diegol.top

¿Necesitas ayuda con este tutorial? Mándame un correo y te resuelvo todas las dudas!


Ver servicios Curso de WooCommerce

También puedes realizar una donacion para seguir apoyando la salida de nuevos tutoriales y actualizaciones

mailerlite diegol

Reader Interactions

comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *