AlbinSoft

El problema de WordPress con la gestión de imágenes

Antes de advertir sobre WordPress me gusta recordar que también hablé de sus virtudes.

Wordpress acumula imágenes

Imágenes en desuso acumuladas.

Un problema de WordPress, como de muchas aplicaciones web, es que es una aplicación web, y eso significa que cada vez que cambias de pantalla, la aplicación se carga y se reconfigura desde cero. Veamos un ejemplo de cómo afecta.

La última vez que WordPress mostró una pantalla, ya fuese al público o ya fuese a un usuario administrativo, tenía configurada una resolución de imagen llamada “banner home” con valores 300×300 pixels. Un instante después se cambia esa configuración en el functions del theme o se cambia de theme y como consecuencia esa resolución desaparece o cambia. La siguiente vez que WordPress muestra una pantalla, no tiene una forma natural de saber que se ha producido ese cambio.

Para detectar el cambio, tendría que mantener una copia de la configuración de resoluciones y cada vez que muestra una pantalla contrastar la configuración actual con la configuración previamente almacenada. Pero aún no se han tomado esa molestia quizá porque plantea nuevos problemas. Por un lado, el momento en el cual se detecta el cambio, puede no ser un buen momento para ponerse a borrar millares de ficheros porque llevaría unos segundos; por otro lado, si borra esos ficheros y después se deshace el cambio de configuración o cambio de theme y vuelve a necesitarlos, puede no ser un buen momento para ponerse a regenerar un millar de imágenes porque llevaría unos minutos.

Versiones exageradamente grandes de las imágenes originales.

Otro problema de WordPress, como de muchas aplicaciones, es que la utilizan usuarios un tanto inconscientes.

WordPress almacena prudentemente la versión original de las imágenes que se introducen en “Medios” de manera que puede disponer de ellas en el futuro para generar nuevas versiones escaladas. Es decir, no confía en que la resolución más grande configurada en ese momento, vaya a ser por siempre la resolución más grande necesaria. Eso está bien.

El problema deviene cuando el usuario sube imágenes de alta calidad, vengan de la cámara de su móvil o de una cámara profesional, porque realmente es improbable que la web pueda llegar a necesitar algún día una versión de 4096×3072 pixels, por pone un ejemplo. Cuando una imagen así, almacenada con una compresión moderada podría pesar menos de 200 kb, en ocasiones se están acumulando con pesos de 5000 kb.

La solución que propongo.

Para paliar ambos problemas he desarrollado un plugin que puede ejecutarse periódicamente que limita la resolución de las imágenes originales y regenera las versiones de cada imagen haciendo una limpieza previa de cualquier versión acumulada históricamente.

Descárgalo en la página oficial de WordPress: ImageCare