¿Por qué ocurre el error 'No se pudo escribir el archivo en el disco' en WordPress?
Este molesto error suele aparecer cuando intentas subir una imagen, un plugin o un tema a través del panel de administración de WordPress. El mensaje indica claramente que el servidor web no tiene los permisos necesarios o carece de espacio físico para almacenar el nuevo archivo en el directorio correspondiente.
Las causas principales de este problema suelen ser tres:
- Permisos incorrectos de las carpetas en el servidor web (especialmente en la carpeta uploads).
- El límite de espacio en disco asignado a tu cuenta de hosting ha sido alcanzado.
- La carpeta temporal del sistema (utilizada por PHP para procesar las subidas) está llena o mal configurada.
Método 1: Modificar los permisos de la carpeta Uploads por FTP o cPanel
La causa más común es que los permisos de la carpeta de descargas de WordPress se hayan alterado. Para solucionarlo, debes restablecer los permisos correctos siguiendo estos pasos:
- Conéctate a tu servidor utilizando un cliente FTP como FileZilla o accede al Administrador de Archivos desde tu panel de hosting (cPanel).
- Navega hasta la ruta
wp-content/de tu instalación de WordPress. - Busca la carpeta llamada
uploads, haz clic derecho sobre ella y selecciona la opción Permisos de archivo. - En el campo de valor numérico, escribe
755. - Marca la casilla que dice Recorrer subdirectorios y luego selecciona la opción Aplicar solo a directorios. Haz clic en Aceptar.
- Vuelve a hacer clic derecho en la carpeta
uploadsy selecciona de nuevo Permisos de archivo. - Esta vez, introduce el valor numérico
644. - Marca la casilla Recorrer subdirectorios y selecciona la opción Aplicar solo a archivos. Haz clic en Aceptar para guardar los cambios.
Método 2: Comprobar el límite de espacio en disco del hosting
Si restablecer los permisos no solucionó el inconveniente, es muy probable que tu cuenta de hosting se haya quedado sin espacio de almacenamiento disponible.
- Inicia sesión en el panel de control de tu proveedor de alojamiento web (cPanel, Plesk, hPanel, etc.).
- Busca la sección de Estadísticas o Uso de Disco en la barra lateral.
- Verifica si has alcanzado el 100% de la capacidad contratada.
- Si es así, elimina archivos innecesarios como copias de seguridad antiguas guardadas en el servidor, limpia la papelera de correo electrónico o solicita una ampliación de plan a tu proveedor de hosting.
Método 3: Definir un directorio temporal de subidas en wp-config.php
Si las soluciones anteriores no funcionan, el problema podría estar en el directorio temporal de PHP de tu servidor, el cual puede estar lleno o no tener acceso de escritura. Puedes indicarle a WordPress que use una carpeta temporal personalizada:
- Accede a los archivos de tu web mediante FTP o cPanel y abre el archivo
wp-config.phpubicado en la raíz. - Desplázate hacia abajo hasta encontrar la línea que dice
/* That's all, stop editing! Happy publishing. */. - Justo encima de esa línea, añade el siguiente código para definir una nueva ruta temporal:
define('WP_TEMP_DIR', dirname(__FILE__) . '/wp-content/temp/'); - Guarda los cambios en el archivo.
- Navega a la carpeta
wp-content/y crea una nueva carpeta llamadatemp. Asegúrate de que esta nueva carpeta tenga permisos de escritura de tipo755.