En este post, te mostraré cómo eliminar las imágenes de Woocommerce automáticamente después de eliminar el producto.
Y te preguntarás: ¿Por qué?
De esta manera, liberas espacio en el servidor y reduces el desorden de la biblioteca de medios. Ni que decir que también ayudarás a mejorar la carga de la web. Pero sobre todo. ¡Te ahorrarás un montón de horas de tedioso mantenimiento!.
Que quede claro que son muchos beneficios:
- Ahorras espacio en el servidor.
- Reduces el desorden de tu biblioteca de medios.
- Mejoras la carga de la web.
- Te ahorras un montón de horas en mantenimiento.
¿No crees que merece la pena?
Imagínate que has borrado unos cuantos productos de tu tienda online. Muy bien. Pero las imágenes asociadas a los productos quedan allí y luego localizarlas y borrarlas es un engorro. Sobre todo si son muchos productos. Así que si quieres que de forma fácil, cada vez que borres un producto se borre también sus imágenes, te daré el código para que se haga de forma automática.
Sí, has leído bien, de forma automática.
Así que una vez que insertes el código, las imágenes se eliminarán de tu WordPress automáticamente al de eliminar cualquier producto. Fácil de copiar, fácil de pegar y fácil de ejecutar. Así que una vez lo hagas ya no tendrás que preocuparte más de esas imágenes de archivo que quedan en el olvido en el repositorio media de WordPress.
Advertencia:
Sin embargo, una advertencia: si una imagen se asigna a más de un producto, el otro producto también perderá esta imagen después de la eliminación del producto.
Y aunque hay plugins que puedan hacerlo, claro que sí, como WooCommerce Delete Product Images, vamos a hacer esto con code snippets, ya que quedará más limpio sin necesidad de abrumar tu WordPress con tanto plugin.
PASO 1. Instala Code Snippets (Opcional)
Desde aquí, podrás instalar code snippets, que te permitirá incrustar código en tu wordpress y especialmente en el archivo functions.php de tu plantilla.
PASO 2. Incrusta el código
O bien editas el archivo functions.php de tu plantilla, o bien usa el paso 1 mencionado arriba desde el plugin code snippets. Sea cual sea el método, tan solo tienes que copiar el código de más abajo y pegarlo. Y ya está, eso es todo.
// Eliminar automáticamente las imágenes de Woocommerce después de eliminar un producto
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 );
}
}
}
Mis herramientas favoritas de WordPress.
Gracias por leer este artículo. Espero que lo hayas encontrado útil a medida. Aquí hay algunas herramientas que utilizo como desarrollador y entusiasta de WordPress que espero que también te resulten útiles.
Estos son enlaces de afiliados, así que si decides usar alguno de ellos, ganaré una comisión y esto me ayudará a crear estos tutoriales y hacer videos de Youtube. Pero con toda honestidad, estas son las herramientas exactas que uso y recomiendo a todos, incluso a mis clientes, alumnos, amigos y familiares.
Hosting: Si deseas tener un alojamiento en la nube administrado realmente rápido y fácil de usar, profesional y con un soporte de lujo, te recomiendo LucusHost. (mira mi reseña aquí).
Desde este enlace podrás conseguir un 20% de descuento.
LMS: ¿Quieres montar tus propios cursos online en WordPress? Te sugiero Learndhash.
Orderable: Toma pedidos de restaurantes online. El plugin de WooCommerce diseñado para ayudarte a administrar tu restaurante.
Iconic: Impulsador de ventas para WooCommerce. Un conjunto de plugins para WooCommerce que potenciará tus ventas, como habilitar opciones de diseño personalizables para tus productos, agregar limites a cantidad de reservas y restricciones de tiempo a métodos de entrega específicos, swatches personalizados para atributos y un sinfín de opciones.
Membresía: Si quieres hacer una web de membresía, Memberdash es una de las opciones más flexibles.