Pass in an (non-resized) attachment URL in WordPress and it returns the ID of the attachment. Doesn’t work with thumbnails.
function ed_get_attachment_id_by_url($url) { global $wpdb; $attachment = $wpdb->get_col($wpdb->prepare("SELECT ID FROM {$wpdb->prefix}posts WHERE guid='%s';", $url)); if ( $attachment ) { return $attachment[0]; } else { return false; } }