The get_attached_file() WordPress PHP function retrieves the attached file path based on the attachment ID.
Usage
$attached_file_path = get_attached_file($attachment_id, $unfiltered);
Parameters
$attachment_id
(int) – The attachment ID for which the file path is to be retrieved.$unfiltered
(bool) – Optional. Whether to skip the ‘get_attached_file’ filter. Default isfalse
.
More information
See WordPress Developer Resources: get_attached_file()
Examples
Retrieve full file path
Retrieve the full file path of an attachment.
$attachment_id = 123; $full_file_path = get_attached_file($attachment_id);
Retrieve filename only
Retrieve only the filename of an attachment.
$attachment_id = 123; $filename_only = basename(get_attached_file($attachment_id));
Retrieve unfiltered file path
Retrieve the unfiltered file path of an attachment, bypassing the ‘get_attached_file’ filter.
$attachment_id = 123; $unfiltered_file_path = get_attached_file($attachment_id, true);
Display attachment file URL
Display the URL of an attachment file using wp_get_attachment_url()
.
$attachment_id = 123; $attachment_url = wp_get_attachment_url($attachment_id); echo $attachment_url;
Check if attachment is an image
Check if the attachment is an image by verifying its MIME type.
$attachment_id = 123; $mime_type = get_post_mime_type($attachment_id); if (strpos($mime_type, 'image/') === 0) { echo "The attachment is an image."; } else { echo "The attachment is not an image."; }