Optimiza las imágenes de tu WordPress desde la terminal (sin plugins): mi script gratuito

Uno de los aspectos más importantes para mejorar la velocidad de carga de un sitio WordPress —y, por tanto, su posicionamiento en buscadores— es reducir el peso de las imágenes. Esta mejora influye directamente en métricas como el Largest Contentful Paint (LCP) y puede marcar una gran diferencia en la experiencia del usuario.

En los últimos años he probado decenas de plugins para optimizar imágenes, pero muchos de ellos cargan el sistema, ocupan recursos innecesarios o incluso complican el mantenimiento del sitio. Por eso decidí crear un script ligero y eficiente que permite hacer esta tarea directamente desde la terminal, sin añadir plugins.

Y lo mejor: lo pongo a tu disposición de forma gratuita.

¿Qué hace este script?

El script optimize-images.sh analiza y optimiza automáticamente todas las imágenes JPG, PNG y GIF que se encuentran en el directorio /wp-content/uploads/ de tu instalación WordPress. Utiliza herramientas de línea de comandos bien conocidas como jpegoptim, optipng y gifsicle, y puede ejecutarse fácilmente en Linux o Mac OS. También permite automatizar el proceso mediante cron.

🛠️ El objetivo: hacer que tu WordPress cargue más rápido, sin complicaciones, sin plugins, y con un control total.

¿Dónde puedes conseguirlo?

Puedes descargar el script desde mi repositorio en GitHub:

👉 Repositorio en GitHub
👉 Descarga directa del script (RAW)

Cómo instalarlo y usarlo

1. Instala las herramientas necesarias

En Debian/Ubuntu:

sudo apt update && sudo apt install jpegoptim optipng gifsicle webp bc -y

En macOS (usando Homebrew):

brew install jpegoptim optipng gifsicle webp

2. Descarga el script

curl -O https://raw.githubusercontent.com/dcarrero/Optimize-WordPress-images/main/optimize-images.sh
chmod +x optimize-images.sh

3. Ejecuta la optimización

Por ejemplo, para optimizar las imágenes de tu WordPress:

./optimize-images.sh -d /var/www/html/wp-content/uploads

Si estás en Mac y usas Local o MAMP, ajusta la ruta a tu carpeta de medios correspondiente.

4. Automatiza con cron (opcional)

Puedes añadirlo a tu crontab para que se ejecute periódicamente:

crontab -e

Y añade:

0 3 * * 0 /ruta/del/script/optimize-images.sh -d /var/www/html/wp-content/uploads --quiet

Esto ejecutará la optimización cada domingo a las 3:00 AM.

¿Por qué lo he creado?

Porque me gusta la eficiencia. Porque muchos plugins hacen bien su trabajo, pero no siempre son la mejor opción para proyectos medianos o grandes, o cuando tienes que gestionar múltiples sitios en un servidor. Y porque creo que compartir soluciones útiles puede hacerle la vida más fácil a otros profesionales del desarrollo, SEO o administración de sistemas.

¿Qué mejoras puedes esperar?

En mi caso, al usarlo en un sitio con más de 50.000 imágenes (Decoración 2.0), conseguí reducir el peso total de la carpeta /uploads/ en más del 35%, y una mejora notable en el LCP y el tiempo de carga general del sitio. Eso si lo fuí haciendo por años para no hacerlo eterno. RECUERDA HACER UN BACKUP PREVIO DE TUS IMÁGENES.

¡Lo puedes mejorar tú también!

Este script es de código abierto, bajo licencia MIT. Puedes adaptarlo, modificarlo o integrarlo con otras herramientas si lo deseas. Y si encuentras alguna mejora o idea, estaré encantado de recibir feedback o pull requests en GitHub.


Si quieres una web más rápida, sin plugins innecesarios y con un control más técnico, esta herramienta puede ayudarte.

Gracias por leer y, si te resulta útil, ¡compártelo!