Opened 8 years ago
Last modified 7 years ago
#39422 new defect (bug)
Consistency for returned value of attachment meta : mime_type VS mime-type
Reported by: | gabrielstuff | Owned by: | |
---|---|---|---|
Milestone: | Future Release | Priority: | normal |
Severity: | normal | Version: | 4.6.1 |
Component: | Media | Keywords: | needs-patch needs-unit-tests |
Focuses: | Cc: |
Description
Hello here,
While using the function wp_get_attachment_metadata, the returned associative array is not consistent.
For video attachment it will give mime_type key with a "_" and for images it will return mime-type key with a "-".
The returned mime type key should either be "mime_type" or "mime-type", but should be the same for any type of media attachment.
Thanks for the great job !
Attachments (1)
Change History (8)
#2
@
8 years ago
Apologies @gabrielstuff , that was my mistake I checked with the video type. Now I have checked with image and Yes it is returning mime type with -
.
Array ( [width] => 220 [height] => 169 [file] => 2016/12/helpinghomeless0.png [sizes] => Array ( [thumbnail] => Array ( [file] => helpinghomeless0-150x150.png [width] => 150 [height] => 150 [mime-type] => image/png ) ) [image_meta] => Array ( [aperture] => 0 [credit] => [camera] => [caption] => [created_timestamp] => 0 [copyright] => [focal_length] => 0 [iso] => 0 [shutter_speed] => 0 [title] => [orientation] => 0 [keywords] => Array ( ) ) )
And this is happening in 4.7 as well. I'm not sure why this is been implemented in this way, lets wait and hear from the core team. Meanwhile, I will try to get a patch for this fix.
#3
@
8 years ago
This is related to the attachment core part and the fact that video is using ID3 which using mime_type
. Glad you confirmed that it is a defect. Sad to hear that this is present in 4.7
Really weird that it does not impact more people :)
Thanks !
#4
@
8 years ago
@gabrielstuff can you tell me in which scenario you are facing this issue? Is there any situation where you are facing any Wordpress bug due to this?
#5
@
8 years ago
Yup, I was planing to automatically insert attachment depending on their mime-type.
I'm working on a theme where you get served with custom embed and some automatic behavior after an attachment has been uploaded.
Based on the mime-type, we generate the appropriate html markup. Unfortunately, I'm now forced to check for mime-type
and mime_type
. Not the end of the world, but if someone read the code, it looks like a typo first and then force you to think about the hot fix instead of thinking about the feature you are coding.
That is all !
Thanks !
#6
@
8 years ago
- Keywords needs-patch needs-unit-tests added
- Milestone changed from Awaiting Review to Future Release
#7
@
7 years ago
It looks like affected files would be:
wp-includes/class-wp-image-editor.php wp-includes/rest-api/endpoints/class-wp-rest-attachments-controller.php wp-includes/class-wp-image-editor-gd.php wp-includes/media.php wp-includes/class-wp-image-editor-imagick.php
and
tests/phpunit/tests/image/editorImagick.php tests/phpunit/tests/image/editorGd.php tests/phpunit/tests/image/functions.php tests/phpunit/tests/image/intermediateSize.php tests/phpunit/tests/media.php
Before changing these files and replace mime-type
with mime_type
, I wonder about all the plugins out there that might depend on mime-type
?
Hi @gabrielstuff ,
Are you sure that you are getting the wrong key value? Because I have tried this and got the correct data as expected.
Are you using any plugin to do any additional work in media? If so please check with your plugin it may modify the data using
wp_get_attachment_metadata
filter.