Archivo de la etiqueta: memory

Problemas con el redimensionado de imágenes en WordPress

Os pongo en situación. Web con WordPress + BuddyPress + algún que otro plugin + alojamiento en 1&1. Al intentar subir una imagen salta un error del tipo: Fatal Error: Allowed memory size of X bytes exhausted….

Por lo que he podido averiguar, el problema viene de que el alojamiento compartido de 1&1 está limitado a 30MB de RAM por usuario, y la instalación de WordPress que tenemos está sobre los 28 y 29MB. WordPress utiliza por defecto la librería GD de PHP para redimensionar imágenes, acción que realiza una vez subida dicha imagen, y este proceso requiere cargar la imagen en memoria y realizar las operaciones oportunas, dando como resultado que exceda de la memoria permitida.

Tras probar diversas soluciones que consisten en ampliar la memoria asignada a PHP a través de los archivos .htaccess, php.ini y wp-config.php, ninguna de ellas me servía. De hecho, en el propio código de WordPress, antes de redimensionar la imagen, realiza esa misma ampliación hasta los 256MB, así que tampoco solucionaba nada.

La solución final por la que he optado, ha sido doble. En primer lugar, desactivar el plugin de Akismet y cerrar los comentarios para evitar el spam, de manera que solo puedan comentar los usuarios registrados. Esto arreglaba algunas cosas, pero seguía sin solucionar el problema de las imágenes. Finalmente encontré en WordPress Answers un plugin para reemplazar GD por ImageMagick, de esta manera evitamos que la operación de redimensionado se realice usando PHP. El plugin se llama ImageMagick Engine. Además, con esto conseguimos una mejor calidad de imagen.