You open Media, Library and the grid spins forever, or it says "No media items found" when you know the photos are there. The "Add Media" button in a post may show the same empty box. Your files are almost never lost. The page that lists them is failing, and the cause is usually one of four things. Here is how to tell which, and the fix for each.
/wp-admin/upload.php?mode=list). If your files show up in the list but not the grid, the files and database are fine and the grid's background request is failing./wp-content/uploads/2026/10/photo.jpg. If it loads, the files are there. If it gives 403 or 404, it is a permissions or path problem, not the library.admin-ajax.php (action query-attachments). A good one returns a list in square brackets. A PHP warning, a blank reply, a 500 or a 403 is your clue.[. Turn off on-screen errors (define('WP_DEBUG_DISPLAY', false); in wp-config.php) and remove stray spaces or blank lines before <?php in functions.php or a recently edited plugin file.wp-content/uploads should be 755 and files 644. Also check Settings, Media: the "Store uploads in this folder" path should be empty or wp-content/uploads, not an old server path left over from a move.WP_MEMORY_LIMIT to 256M and ask the host about the PHP time limit; list view works meanwhile.http://. A search-and-replace of the old address in the database (with a backup first) fixes it.| What you see | What it means | Usual fix |
|---|---|---|
| Grid spins forever, list view works | The grid's admin-ajax request fails | Find the plugin, or clean the reply |
| "No media items found" but files exist | The request returned something that is not a list | Check admin-ajax in the Network tab |
| admin-ajax.php gives 403 | A firewall or security plugin blocks it | Allow that request in the firewall log |
| Thumbnails broken, direct image link 403/404 | Wrong folder permissions or upload path | 755 folders, 644 files, reset Settings, Media path |
| Started right after an update | That plugin or theme broke it | Roll it back or wait for its fix |
wp-content/uploads; re-uploading makes duplicates and fills the disk.Most cases are one plugin found or one warning removed. If the library still will not load, that is what the box below is for. Related: Images not showing, Upload errors, "Not a valid JSON response".