Deleting WordPress Attachments with wp_delete_attachment

The wp_delete_attachment function in WordPress is used to delete an attachment from the database and remove its associated files from the server. This function can be useful when managing media files on a WordPress site, allowing for the permanent removal of unwanted or unused attachments.

By using wp_delete_attachment, site administrators can efficiently clean up the media library and free up server space by removing unnecessary files. This function provides a convenient way to manage attachments and maintain a well-organized media library within a WordPress site.

Parameters accepted by wp_delete_attachment function:

  • $post_id (int, required): Attachment ID.
  • $force_delete (bool, optional, default: false): Whether to bypass Trash and force deletion.

Value returned by wp_delete_attachment function:

The function returns WP_Post on success, and false or null on failure.


How to delete an attachment by ID

Use the wp_delete_attachment function to delete an attachment by its ID.

$attachment_id = 123;
$result = wp_delete_attachment( $attachment_id );

How to delete an attachment and its associated file

Use the wp_delete_attachment function with the true parameter to delete an attachment and its associated file from the server.

$attachment_id = 123;
$result = wp_delete_attachment( $attachment_id, true );

How to conditionally delete an attachment

Use an if statement to conditionally delete an attachment based on a certain condition.

$attachment_id = 123;
if ( $condition ) {
 $result = wp_delete_attachment( $attachment_id );


In conclusion, the wp_delete_attachment function is an useful utility for managing media files within WordPress. With its ability to permanently remove attachments from the database and file system, it provides a robust solution for cleaning up unused or unwanted media. Additionally, its flexibility in accepting various parameters allows for fine-tuned control over the deletion process. By understanding and utilizing this function effectively, WordPress developers and administrators can ensure the efficient management of their media library.

Related WordPress Functions