Opened 3 years ago
Last modified 8 months ago
#12238 new enhancement
Introduce a function to return image attributes of a specific attachment
| Reported by: |
|
Owned by: | |
|---|---|---|---|
| Priority: | normal | Milestone: | Future Release |
| Component: | Media | Version: | |
| Severity: | normal | Keywords: | has-patch dev-feedback |
| Cc: | xoodrew@…, akosti92@… |
Description (last modified by nacin)
It's useful to get all the data relating to an image via one source:
/**
* returns an array containing attributes for an image stored in the database
* $image_id : id of the image to query
* $size : size of the image, can be 'thumbnail', 'medium', 'large' or 'full'
*/
function get_image_by_id($image_id, $size) {
$image = get_post($image_id);
$imageObj = array();
$imagearray = wp_get_attachment_image_src($image->ID, $size, false);
$imageObj['src'] = $imagearray[0];
$imageObj['width'] = $imagearray[1];
$imageObj['height'] = $imagearray[2];
$imageObj['id'] = $image->ID;
$imageObj['title'] = $image->post_title;
$imageObj['caption'] = $image->post_excerpt;
$imageObj['description'] = $image->post_content;
$imageObj['alt'] = get_post_meta($image->ID, '_wp_attachment_image_alt', true);
return $imageObj;
}
Attachments (1)
Change History (8)
- Component changed from General to Media
- Description modified (diff)
- Milestone changed from Unassigned to 3.1
comment:2
alexmansfield — 3 years ago
- Keywords needs-patch added
- Milestone changed from Awaiting Triage to Future Release
Needs a formal patch.
- Summary changed from image helper functions that I think would be useful in the core to Introduce a function to return image attributes of a specific attachment
Duplicate: #21851
comment:6
DrewAPicture — 8 months ago
- Cc xoodrew@… added
Note: See
TracTickets for help on using
tickets.

I wish I would have found this earlier. It is so much simpler than the solution I was working on. However, think it would helpful to be able to access the data in an object format $object->variable. Also, setting a default value for $size would allow easier access to image details such as caption and description when the size doesn't matter. Here are the changes I made:
function get_image_by_id($image_id, $size = 'full') { $image = get_post($image_id); $imagearray = wp_get_attachment_image_src($image->ID, $size, false); $imageObj->src = $imagearray[0]; $imageObj->width = $imagearray[1]; $imageObj->height = $imagearray[2]; $imageObj->id = $image->ID; $imageObj->title = $image->post_title; $imageObj->caption = $image->post_excerpt; $imageObj->description = $image->post_content; $imageObj->alt = get_post_meta($image->ID, '_wp_attachment_image_alt', true); return $imageObj; }Let me know if there's anything else I can do to help this process along.