List All Unattached Files in Media Library

Snippets by IsItWP

Do you want to find out the unattached image files in your media library? While there’s probably a plugin for this, we have created a quick code snippet that you can use to list all unattached files in media library in WordPress.


All you have to do is add this code to your theme’s functions.php file or in a site-specific plugin:

function get_attachment_files(){
$args = array(
    'post_type' => 'attachment',
    'numberposts' => -1,
    'post_status' => null,
    'post_parent' => 0
$attachments = get_posts($args);

 if ($attachments) {
    foreach ($attachments as $post) {

Add this code snippet to a WordPress template file.

<? get_attachment_files(); ?>

Note: If this is your first time adding code snippets in WordPress, then please refer to our guide on how to properly add code snippets in WordPress, so you don’t accidentally break your site.

If you liked this code snippet, please consider checking out our other articles on the site like: 24 best WordPress multi-purpose themes and how to easily back up your WordPress site.

Comments   Leave a Reply

  1. so the query will be like this

    SELECT p.* FROM wp_posts p LEFT JOIN wp_posts p1 ON p.post_parent = p1.ID WHERE p.post_parent > 0 AND p.post_author IN (0,757,1758) AND p.post_type = ‘attachment’ AND p1.ID IS NULL

    we can remove the author part if don’t need that.

    1. Thank you, Tarun. You can also use the WPCode plugin to access hundreds of code snippets. It also lets you add and activate snippets quickly. 🙂

  2. Hi

    I have added a few products which I get from an API.

    After that, I update the products and that process added the same images again.

    Now on the deletion of those products, newly added images have post parent 0 (zero)
    But previously added images still have the parent So this code not work in that case.

    Right now, the requirement is: Get all unattached images (might be post_parent is zero or not)


  3. MD Ariful Islam Sonnet March 20, 2013 at 2:51 pm

    Thanks sir

Add a Comment

We're glad you have chosen to leave a comment. Please keep in mind that all comments are moderated according to our privacy policy, and all links are nofollow. Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.

WordPress Launch Checklist

The Ultimate WordPress Launch Checklist

We've compiled all the essential checklist items for your next WordPress website launch into one handy ebook.
Yes, Send Me the Free eBook!