Cómo Eliminar Tamaños de Imagen No Deseados en wp-content/uploads
La configuración predeterminada de medios en mi blog WordPress es 150x150, 300x300, 1024x1024 para miniaturas, medianas y grandes respectivamente. Ahora estoy diseñando un tema que necesita diferentes tamaños de imágenes. Cambié la configuración a 72x72, 250x250, 400x400 para miniaturas, medianas y grandes.
Para redimensionar mis imágenes antiguas, usé el plugin Regenerate Thumbnails de WordPress, que generó fácilmente los nuevos tamaños. Esto resolvió mi problema principal.
Problema Principal:
Ahora el problema es que mi espacio de hosting se está agotando. Al revisar mis archivos, encontré que tengo 7 versiones de cada imagen pero solo uso 4.
nombre-primera-imagen.jpg
nombre-primera-imagen-72x72.jpg
nombre-primera-imagen-150x150.jpg
nombre-primera-imagen-250x250.jpg
nombre-primera-imagen-300x300.jpg
nombre-primera-imagen-400x400.jpg
nombre-primera-imagen-1024x1024.jpg
nombre-segunda-imagen.jpg
nombre-segunda-imagen-72x72.jpg
nombre-segunda-imagen-150x150.jpg
nombre-segunda-imagen-250x250.jpg
nombre-segunda-imagen-300x300.jpg
nombre-segunda-imagen-400x400.jpg
nombre-segunda-imagen-1024x1024.jpg
...............................
---------- y así sucesivamente ----------
Quiero eliminar las imágenes de tamaño 150x150, 300x300 y 1024x1024. Muchos recomiendan los plugins DNUI (Delete not used images) y Clean Up Images, pero no detectan esos tamaños antiguos.
Pregunta: ¿Cómo puedo eliminar los tamaños de imagen específicos de la carpeta wp-content/uploads
?

Una solución rápida y sencilla para esto es utilizar un plugin llamado Force Regenerate Thumbnails (con el cual no tengo ninguna afiliación).
A diferencia de un plugin como Regenerating Thumbnails, Force Regenerate Thumbnails crea todos tus nuevos tamaños personalizados y elimina todos los tamaños redundantes/huerfanos.
Force Regenerate Thumbnails te permite eliminar todos los tamaños antiguos de imágenes y REALMENTE regenerar las miniaturas para tus archivos adjuntos de imágenes.

Me alegra que te haya ayudado. Uso mucho este plugin cuando experimento con tamaños de imágenes. :-)

¿Qué versión de WordPress estás usando? Yo tengo la 4.0.1 y arroja muchos errores.

¡Eso es fácil! Si tienes acceso SSH, inicia sesión y haz lo siguiente para cada tamaño. Solo estoy mostrando el tamaño 150x150 como ejemplo.
Accede a la carpeta de subidas deseada mediante la línea de comandos.
cd /tu-sitio.com/wp-content/uploads
Vamos a buscar si ese tamaño está disponible.
find ./uploads/* -iname '*-150x150.*' -ls
Si ves algunas imágenes como resultado, entonces elimínalas con
find ./uploads/* -iname '*-150x150.*' -exec rm {} \;
Asegúrate de hacer una copia de seguridad de todo antes de ejecutar un comando como este.
O puedes buscar todas las imágenes redimensionadas con este comando
find . -regextype posix-extended -regex ".*-[[:digit:]]{2,4}x[[:digit:]]{2,4}(@2x)?.(jpg|jpeg|png|eps|gif)" -type f
Si hay alguna. Entonces puedes eliminarlas todas con el siguiente comando
find . -regextype posix-extended -regex ".*-[[:digit:]]{2,4}x[[:digit:]]{2,4}(@2x)?.(jpg|jpeg|png|eps|gif)" -type f -exec rm {} \;
De nuevo, asegúrate de hacer una copia de seguridad de todo antes de ejecutar un comando como este.
Después de todo esto, en lugar de generar todos los tamaños nuevamente, puedes usar OTF Regenerate Thumbnails.
Este plugin funciona de manera similar a Regenerate Thumbnails, excepto que las imágenes se redimensionan automáticamente / sobre la marcha, cuando se utilizan. Una vez creadas, no se procesarán nuevamente.
¡Saludos!

Encontré otra solución usando la línea de comandos
shopt -s globstar
rm -- **/*{70x70.png,90x90.png,120x79.png,120x80.png,120x120.png,120x101.jpg,150x150.png,200x180.png,300x199.png,300x251.png}
rm -- **/*{70x70.jpg,90x90.jpg,120x79.jpg,120x80.jpg,120x120.jpg,120x101.jpg,150x150.jpg,200x180.jpg,300x199.jpg,300x251.jpg}
donde 300x251.jpg es el tamaño de tu archivo de miniatura.
Si quieres ser extremo, haz esto rm -- **/*{*x*.png,*x*.jpg,*x*.jpeg,*x*.gif}
este patrón eliminará todas las imágenes que tengan una x en el nombre del archivo, lo cual no recomiendo.

Paso 1: en el archivo functions.php
add_filter( 'intermediate_image_sizes', 'remove_default_img_sizes', 10, 1);
function remove_default_img_sizes( $sizes ) {
$targets = ['medium', 'medium_large','thumbnail','large', '1536x1536', '2048x2048','woocommerce_thumbnail','woocommerce_single','woocommerce_gallery_thumbnail','shop_catalog','shop_single','shop_thumbnail'];
foreach($sizes as $size_index=>$size) {
if(in_array($size, $targets)) {
unset($sizes[$size_index]);
}
}
return $sizes;
}
Paso 2: Configuración del enlace wp-cli: https://wp-cli.org
contenido del archivo wp.bat =>
@ECHO OFF
php "C:/wp-cli/wp-cli.phar" %*
enlace del archivo wp-cli.phar: https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
Paso 3: Ejemplo de uso: wp media regenerate --yes
