Pulsa ESC para cerrar

Curso WordpressCurso Wordpress

La biblioteca de medios no muestra las imágenes: diagnóstico paso a paso

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:

  1. Abre Medios → Biblioteca.
  2. Pulsa F12 y ve a la pestaña Red (Network).
  3. Recarga la página y busca una petición llamada admin-ajax.php con query-attachments.
  4. 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 es https://: 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.