
Vas a Medios → Biblioteca y la cuadrícula se queda girando para siempre. O aparece vacía aunque tienes cientos de imágenes. O se ven cuadros grises donde deberían estar las miniaturas.
Son síntomas distintos con causas distintas, y hay una forma rápida de saber cuál es la tuya.
Paso 1: mira el error real
La vista de cuadrícula de la biblioteca pide las imágenes al servidor mediante una petición a admin-ajax.php. Si esa petición falla, la biblioteca se queda vacía sin decir por qué. Para ver el motivo:
- Abre Medios → Biblioteca.
- Pulsa F12 y ve a la pestaña Red (Network).
- Recarga la página y busca una petición llamada
admin-ajax.phpconquery-attachments. - Mira su estado y, en Respuesta, lo que devolvió.
También prueba la vista de lista (el ícono de líneas junto al de cuadrícula, arriba a la izquierda). Si en lista sí aparecen las imágenes, el problema está en esa petición AJAX.
Causa 1: un plugin o el tema rompe la respuesta
Si la respuesta tiene un estado 500, o empieza con texto como Warning: o Notice: antes del JSON, un plugin está generando un error o imprimiendo algo donde no debe.
Qué hacer:
- Revisa si el error menciona un plugin o archivo concreto.
- Si no, usa el plugin Health Check & Troubleshooting: activa el modo de resolución de problemas, que desactiva plugins y tema solo para ti, sin afectar a tus visitas. Ve activándolos uno por uno hasta que la biblioteca falle.
Causa 2: errores de PHP visibles
Si WP_DEBUG está activado y WP_DEBUG_DISPLAY no está en false, cualquier aviso de PHP se mezcla con la respuesta y la rompe. En wp-config.php, deja:
define( 'WP_DEBUG_DISPLAY', false );
@ini_set( 'display_errors', 0 );
Así los errores van al registro y no a la pantalla.
Causa 3: cuadros grises (las imágenes existen, pero no cargan)
Si la biblioteca muestra los elementos pero las miniaturas no se ven, abre una en otra pestaña (clic derecho → abrir imagen). Según lo que pase:
- La dirección es
http://y tu sitio eshttps://: el navegador la bloquea por contenido mixto. Revisa las direcciones en Ajustes → Generales y reemplaza las direcciones antiguas en la base de datos. - La dirección apunta a otro dominio (el de desarrollo o el antiguo): pasó lo mismo después de una migración. Toca hacer buscar y reemplazar en la base de datos.
- Da 404: el archivo no existe en el servidor. Si migraste el sitio, quizás no copiaste toda la carpeta
uploads. - Da 403: problema de permisos (causa 4).
Causa 4: permisos de archivos
Las carpetas de uploads deben tener permisos 755 y los archivos 644. Si una migración o un plugin los cambió, el servidor no puede servirlos o WordPress no puede guardar las nuevas. Por SSH:
cd ~/public_html/wp-content/uploads
find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;
En cPanel también puedes cambiarlos desde el Administrador de archivos, con clic derecho → Cambiar permisos.
Causa 5: una ruta de subida personalizada
En sitios antiguos o migrados, a veces la opción upload_path tiene una ruta del servidor anterior. Compruébalo:
wp option get upload_path
wp option get upload_url_path
Si alguna devuelve una ruta que no corresponde a tu servidor actual, déjala vacía para que WordPress use la carpeta por defecto:
wp option update upload_path ''
wp option update upload_url_path ''
Si usas un plugin que guarda las imágenes en otro servicio (Amazon S3, un CDN, almacenamiento externo), el problema puede estar en su configuración o en su conexión con ese servicio. Revisa primero sus ajustes y su registro de errores.
Las imágenes nuevas no se ven, las antiguas sí
Si solo fallan las imágenes recientes, suele ser un problema al crear las miniaturas: falta memoria, falta la extensión de imágenes de PHP (GD o Imagick) o el formato no está soportado. Revisa Herramientas → Salud del sitio → Información → Medios, que muestra qué soporta tu servidor.
¿La petición de query-attachments te devuelve un error que no entiendes? Cópialo en el foro y lo interpretamos en comunidad.





