Commit Graph

574 Commits

Author SHA1 Message Date
Drew Jaynes
1e2caf6712 Docs: Update an inline comment in wp_get_attachment_image_sizes(), which came in as part of the Responsive Images merge in [34855].
Props joemcgill.
See #33641.

Built from https://develop.svn.wordpress.org/trunk@34876


git-svn-id: http://core.svn.wordpress.org/trunk@34841 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-06 17:47:24 +00:00
Scott Taylor
99be7beda0 Merge the Responsive Images feature plugin into core, initial commit. See: https://github.com/ResponsiveImagesCG/wp-tevko-responsive-images/
New functions in `media.php`:
* `wp_get_attachment_image_srcset_array()` - Returns an array of image candidate string data used to build a `srcset` value for an attachment given an `$attachement_id` and `$size`.
* `wp_get_attachment_image_srcset()` - Returns the `srcset` value for an attachment given an `$attachement_id` and `$size`.
* `wp_get_attachment_image_sizes()` - Returns the `sizes` value for an attachment given an `$attachement_id` and `$size` and optional arguments used to alter its output.
* `wp_make_content_images_responsive()` - A display filter for adding `srcset` and `sizes` to images embedded in content.
* `wp_img_add_srcset_and_sizes()` - A utility function used by `wp_make_content_images_responsive()` to add `srcset` and `sizes` to a single `<img>` element.

Modifies existing core functions:
* Modify `wp_get_attachment_image()` so the HTML returned for an image includes `srcset` and `sizes`.
* Modify `get_media_embedded_in_content()` (sup, 3.6 leftover) by adding `<img>` to the list of accepted tags that can be matched in content. This is used in `wp_make_content_images_responsive()` to find all of the images embedded in content before passing them off to `wp_img_add_srcset_and_sizes()`.

Tests:
* Add a new factory method to `WP_UnitTest_Factory_For_Attachment` named `create_upload_object()`
* Adds unit tests
* Updates unit tests

Props joemcgill, tevko, jaspermdegroot, mdmcginn, barryceelen, peterwilsoncc, fsylum, wonderboymusic, chriscoyier, benjaminpick, jrfnl, #12kingkool68, janhenckens, ryanmarkel, side777, ryelle, wturrell, micahmills, mattbagwell, coliff, DrewAPicture.
See #33641.

Built from https://develop.svn.wordpress.org/trunk@34855


git-svn-id: http://core.svn.wordpress.org/trunk@34820 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-06 04:59:24 +00:00
Scott Taylor
d96fb9def9 Embeds: move some functions from media.php to a new file, embed-functions.php, via svn cp
See #32522.

Built from https://develop.svn.wordpress.org/trunk@34851


git-svn-id: http://core.svn.wordpress.org/trunk@34816 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-10-06 03:59:24 +00:00
Scott Taylor
6cde1a05cb After [34629], use $size_class instead of $size.
See #32093.

Built from https://develop.svn.wordpress.org/trunk@34657


git-svn-id: http://core.svn.wordpress.org/trunk@34621 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-28 02:50:24 +00:00
Scott Taylor
1b6ed5cbb7 Add size-$size class to <img> in wp_get_attachment_image().
Fixes #32093.

Built from https://develop.svn.wordpress.org/trunk@34629


git-svn-id: http://core.svn.wordpress.org/trunk@34593 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-27 17:54:27 +00:00
John Blackbourn
aa35e473f7 callback is not a valid type in PHP, PSR-5, or phpDocumentor. callable should be used instead.
Fixes #34032

Built from https://develop.svn.wordpress.org/trunk@34566


git-svn-id: http://core.svn.wordpress.org/trunk@34530 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-25 23:58:25 +00:00
Scott Taylor
8cc5a142e4 Media Modal: move the translation strings for insertIntoPost and uploadedToThisPost to the get_post_type_labels() array as insert_into_item and uploaded_to_this_item.
Props flixos90.
Fixes #33616.

Built from https://develop.svn.wordpress.org/trunk@34472


git-svn-id: http://core.svn.wordpress.org/trunk@34436 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-24 03:22:24 +00:00
Scott Taylor
d165b25920 Include fourth array parameter in return value doc block for wp_get_attachment_image_src().
Props kadamwhite.
Fixes #33905.

Built from https://develop.svn.wordpress.org/trunk@34470


git-svn-id: http://core.svn.wordpress.org/trunk@34434 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-24 03:14:24 +00:00
Scott Taylor
2ddc1d2f3a Media: Add a new function, wp_get_attachment_image_url(), which is a shortcut for wp_get_attachment_image_src() - same function signature, but returns just the URL based on $size.
Adds unit test.

Props dipesh.kakadiya, swissspidy, sebastian.pisula.
Fixes #33878.

Built from https://develop.svn.wordpress.org/trunk@34372


git-svn-id: http://core.svn.wordpress.org/trunk@34336 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-22 04:13:27 +00:00
Drew Jaynes
bbae198372 Docs: Add a more complete return description for the array of data (or false) returned by image_downsize().
If not short-circuited via the `image_downsize` boolean filter, `image_downsize()` returns an array of data including the image URL, width, height, and whether the image size is intermediate, in that order. Otherwise, it returns false.

Fixes #30636.

Built from https://develop.svn.wordpress.org/trunk@34362


git-svn-id: http://core.svn.wordpress.org/trunk@34326 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-21 10:22:26 +00:00
Scott Taylor
1f3dce8c75 Media: Ensure that HTML5 captions apply the 'img_caption_shortcode_width'.
Props joemcgill.
Fixes #31053.

Built from https://develop.svn.wordpress.org/trunk@34261


git-svn-id: http://core.svn.wordpress.org/trunk@34225 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-17 06:04:24 +00:00
Scott Taylor
ad0eb9c442 Media: In wp_prepare_attachment_for_js(), don't call file_exists() and filesize() to retrieve $bytes if the data is already present in $meta. This is how the same code in attachment_submitbox_metadata() already works.
Props polevaultweb.
Fixes #33214.

Built from https://develop.svn.wordpress.org/trunk@34258


git-svn-id: http://core.svn.wordpress.org/trunk@34222 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-17 05:03:24 +00:00
Scott Taylor
191400f9e6 Don't ever use the guid value when retrieving URLs for media, use wp_get_attachment_url(). Use get_attached_file() for path to file.
Fixes #33386.

Built from https://develop.svn.wordpress.org/trunk@34163


git-svn-id: http://core.svn.wordpress.org/trunk@34131 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-15 02:50:25 +00:00
Nikolay Bachiyski
3778cae8ec Shortcodes: don't allow unclosed HTML elements in attributes
Built from https://develop.svn.wordpress.org/trunk@34134


git-svn-id: http://core.svn.wordpress.org/trunk@34102 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-14 22:36:24 +00:00
Scott Taylor
c1bb5b5ce3 After [33843], update the location of some files in This filter is documented in docs
Props dimadin.
See #33413.

Built from https://develop.svn.wordpress.org/trunk@33954


git-svn-id: http://core.svn.wordpress.org/trunk@33923 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-08 22:17:26 +00:00
Sergey Biryukov
bffe6a63ba Make curly quotes in playlist item title translatable.
fixes #33391.
Built from https://develop.svn.wordpress.org/trunk@33844


git-svn-id: http://core.svn.wordpress.org/trunk@33812 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-09-01 13:50:21 +00:00
Scott Taylor
0d3f30ba61 Improve the reliability of the crop returned by image_get_intermediate_size().
Add a bunch of unit tests to `tests/image/intermediate_size.php`.

Props joemcgill, ericlewis, kitchin, SergeyBiryukov, chipbennett.
Fixes #17626.

Built from https://develop.svn.wordpress.org/trunk@33807


git-svn-id: http://core.svn.wordpress.org/trunk@33775 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-08-30 02:41:21 +00:00
Scott Taylor
42b6ac80e7 Ensure that attachment_url_to_postid() matches cross-scheme when front-end and back-end schemes are different.
Adds unit test.

Props welcher.
Fixes #33109.

Built from https://develop.svn.wordpress.org/trunk@33705


git-svn-id: http://core.svn.wordpress.org/trunk@33672 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-08-22 16:39:25 +00:00
Scott Taylor
b19bb99853 Playlists, for .wp-playlist-item-title elements: move the curly quotes to CSS pseudo-element content, making them easier to override or remove.
Fixes #33391.

Built from https://develop.svn.wordpress.org/trunk@33643


git-svn-id: http://core.svn.wordpress.org/trunk@33610 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-08-19 05:51:25 +00:00
Helen Hou-Sandí
d22adb0d6e Ensure the caption shortcode outputs a valid HTML ID.
fixes #33179.

Built from https://develop.svn.wordpress.org/trunk@33489


git-svn-id: http://core.svn.wordpress.org/trunk@33456 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-07-29 17:59:24 +00:00
Scott Taylor
2b513bf60a wp_audio|video_shortcode() doesn't allow you to pass id, the docs shall reflect that.
Props thorbrink.
See #32855.

Built from https://develop.svn.wordpress.org/trunk@33025


git-svn-id: http://core.svn.wordpress.org/trunk@32996 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-07-01 15:01:26 +00:00
Konstantin Obenland
8e57bef0ee After [32866], change filter name.
While filter names generally don't have to be tied to the function in which they 
are applied, the API for media display generally seems to use the
`wp_get_attachment_*` pattern.

Props DrewAPicture.
Fixes #32363.


Built from https://develop.svn.wordpress.org/trunk@33018


git-svn-id: http://core.svn.wordpress.org/trunk@32989 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-07-01 03:47:24 +00:00
Scott Taylor
747b1eb713 After [32866], fix doc blocks.
Props DrewAPicture.
See #32363.

Built from https://develop.svn.wordpress.org/trunk@32949


git-svn-id: http://core.svn.wordpress.org/trunk@32920 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-25 21:02:25 +00:00
Scott Taylor
3b88c839f9 In wp_prepare_attachment_for_js(), when setting filename, call wp_basename() on the result of get_attached_file(), not WP_Post->guid. guid can be set to the result get_permalink(), which is not a file path.
Props daxelrod.
Fixes #32531.

Built from https://develop.svn.wordpress.org/trunk@32914


git-svn-id: http://core.svn.wordpress.org/trunk@32885 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-23 18:30:26 +00:00
Scott Taylor
ec6dfc7f2b Add a filter in wp_get_attachment_image_src() called attachment_image_src.
Props eclev91, MikeHansenMe.
Fixes #32363.

Built from https://develop.svn.wordpress.org/trunk@32866


git-svn-id: http://core.svn.wordpress.org/trunk@32837 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-19 21:27:25 +00:00
Scott Taylor
b126a0144f In the youtube_embed_url embed handler, make embed a non-capturing group that alternately matches for v - YouTube supports both URL paths.
Add unit test cases.

Props dmchale for some patch work.
Fixes #32161.

Built from https://develop.svn.wordpress.org/trunk@32787


git-svn-id: http://core.svn.wordpress.org/trunk@32758 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-06-16 00:35:25 +00:00
Sergey Biryukov
3fc78a1109 Avoid a PHP notice in wp_enqueue_media() if $post is null.
see #19257.
Built from https://develop.svn.wordpress.org/trunk@32675


git-svn-id: http://core.svn.wordpress.org/trunk@32645 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-31 21:54:25 +00:00
John Blackbourn
ff3f2ac243 Remove an embed handler accidentally introduced in r32673.
Built from https://develop.svn.wordpress.org/trunk@32674


git-svn-id: http://core.svn.wordpress.org/trunk@32644 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-31 16:56:26 +00:00
John Blackbourn
02192cb53f Introduce featured_image, set_featured_image, remove_featured_image, and use_featured_image post type labels when registering a post type in order to override the 'Featured Image' text and its related phrases.
Props johnbillion, mordauk, valendesigns.
Fixes #19257.

Built from https://develop.svn.wordpress.org/trunk@32673


git-svn-id: http://core.svn.wordpress.org/trunk@32643 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-31 16:54:27 +00:00
Scott Taylor
4bf8e158ec Fix doc blocks for media*.php
See #32444.

Built from https://develop.svn.wordpress.org/trunk@32609


git-svn-id: http://core.svn.wordpress.org/trunk@32579 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-26 19:23:25 +00:00
Dominik Schilling
5294e0e655 Rename get_media_embedded_in_content_allowed filter to media_embedded_in_content_allowed_types.
The new name fits better with some other `_allowed_` filters.

props DrewAPicture.
fixes #26675.
Built from https://develop.svn.wordpress.org/trunk@32113


git-svn-id: http://core.svn.wordpress.org/trunk@32092 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-11 21:49:27 +00:00
Drew Jaynes
8652208375 Remove unneeded spaces in the hook doc for the attachment_url_to_postid filter.
See [31867]. See #31888.

Built from https://develop.svn.wordpress.org/trunk@32043


git-svn-id: http://core.svn.wordpress.org/trunk@32022 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-05 16:07:27 +00:00
Andrew Ozz
d94050aafa Introduce attachment_url_to_postid filter to let plugins manage the uploads location better.
Props mattwiebe. Fixes #31717.
Built from https://develop.svn.wordpress.org/trunk@31867


git-svn-id: http://core.svn.wordpress.org/trunk@31846 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-23 17:24:30 +00:00
Drew Jaynes
9c1283b28f Add hook documentation for the get_media_embedded_in_content_allowed filter, introduced in [31574].
Props valendesigns.
Fixes #26675.

Built from https://develop.svn.wordpress.org/trunk@31851


git-svn-id: http://core.svn.wordpress.org/trunk@31830 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-20 19:29:27 +00:00
Scott Taylor
8f0b626d13 Introduce a function, wp_attachment_is( $type, $post = 0 ), to collapse the logic for determining whether an attachment is an image, audio, or video.
This is admittedly a first pass. There needs to be a generic handler for when any other type is passed, but for now it accepts the whitelist.

See #25275.

Built from https://develop.svn.wordpress.org/trunk@31645


git-svn-id: http://core.svn.wordpress.org/trunk@31626 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-06 20:26:26 +00:00
Scott Taylor
295af37bd0 Improve get_media_embedded_in_content() so that it returns the media it finds in the same order that it appears in the content.
Adds unit test, updates another.

Props kopepasah.
See #26675.

Built from https://develop.svn.wordpress.org/trunk@31574


git-svn-id: http://core.svn.wordpress.org/trunk@31555 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-27 16:11:25 +00:00
Drew Jaynes
46286070a5 Clarify a wide variety of function, parameter, and return descriptions in DocBlocks throughout wp-includes/media.php.
Props stevegrunwell, DrewAPicture.
Fixes #28408.

Built from https://develop.svn.wordpress.org/trunk@31530


git-svn-id: http://core.svn.wordpress.org/trunk@31511 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-24 07:42:24 +00:00
Drew Jaynes
ac4aae99e6 Add changelog entries to the post_gallery and post_playlist hook docs for the $instance variable that was added in [31304].
Props ninnypants for the initial patch.
Fixes #31151.

Built from https://develop.svn.wordpress.org/trunk@31309


git-svn-id: http://core.svn.wordpress.org/trunk@31290 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-31 00:33:22 +00:00
Sergey Biryukov
5289e92ef5 Rename $instances to $instance in wp_audio_shortcode() and wp_video_shortcode() for consistency with gallery_shortcode() and wp_playlist_shortcode().
see #31151.
Built from https://develop.svn.wordpress.org/trunk@31305


git-svn-id: http://core.svn.wordpress.org/trunk@31286 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-30 16:06:22 +00:00
Sergey Biryukov
fa86f3ef9c Pass the current shortcode instance ID to post_gallery and post_playlist filters.
props justincwatt.
fixes #31151.
Built from https://develop.svn.wordpress.org/trunk@31304


git-svn-id: http://core.svn.wordpress.org/trunk@31285 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-30 16:02:21 +00:00
Sergey Biryukov
247cdad571 attachment_url_to_postid() should always return an integer.
props nathan_dawson, ashfame.
fixes #31044.
Built from https://develop.svn.wordpress.org/trunk@31239


git-svn-id: http://core.svn.wordpress.org/trunk@31220 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-18 20:33:23 +00:00
Scott Taylor
fc843ce4d0 There are some random add_action() and add_filter() calls littered around some files in wp-includes/. These should be moved to wp-includes/default-filters.php with the rest of the registered hooks. It seems like this was the best practice for awhile and then we randomly stopped. This file loads way before any of the includes, so the hooks will be registered for any request that loads WordPress, even SHORTINIT - a lot of the hooks registered won't run anyways (that's already the case).
See #30947.

Built from https://develop.svn.wordpress.org/trunk@31168


git-svn-id: http://core.svn.wordpress.org/trunk@31149 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-12 16:40:23 +00:00
Sergey Biryukov
24b3ee8680 Make a hint on Edit Selection view in media modal more accurate, as it applies to all media files, not just images.
props pavelevap.
see #30931.
Built from https://develop.svn.wordpress.org/trunk@31102


git-svn-id: http://core.svn.wordpress.org/trunk@31083 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-08 21:24:23 +00:00
Scott Taylor
4feecb922c Use && instead of and in the 3 places where and was used.
See #30799.

Built from https://develop.svn.wordpress.org/trunk@31099


git-svn-id: http://core.svn.wordpress.org/trunk@31080 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-08 21:12:22 +00:00
Scott Taylor
60b0cd7943 The keyword elseif should be used instead of else if so that all control keywords look like single words.
This was a mess, is now standardized across the codebase, except for a few 3rd-party libs. 

See #30799.

Built from https://develop.svn.wordpress.org/trunk@31090


git-svn-id: http://core.svn.wordpress.org/trunk@31071 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-08 07:05:25 +00:00
Scott Taylor
a5593a64d3 More-specific docs for wp_embed_handler_youtube().
Fixes #30711.

Built from https://develop.svn.wordpress.org/trunk@31018


git-svn-id: http://core.svn.wordpress.org/trunk@30999 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-01 19:21:27 +00:00
Scott Taylor
952a5c9971 Support chromeless Vimeo via MEjs:
* Bump MediaElement script loader versions to 2.16.2 - missed in [30634], oops!
* Add `Froogaloop` to `js/mediaelement` scripts for Vimeo
* Check for Vimeo in the same locations that YouTube is checked
* Dynamically load Froogaloop script in admin when editing a TinyMCE view
* Edit MediaElement to call `mejs.$.extend` instead of `$.extend` in `mejs.HtmlMediaElementShim.createPlugin()`, since `$` is not available via WP's jQuery (I will report this upstream):
6f9a78e008/src/js/me-shim.js (L631)

Fixes #29267.

Built from https://develop.svn.wordpress.org/trunk@31016


git-svn-id: http://core.svn.wordpress.org/trunk@30997 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-31 20:41:24 +00:00
Scott Taylor
5eb5afac34 For clarity, initialize some arrays that previously were only assigned via short circuit in loops.
See #30799.

Built from https://develop.svn.wordpress.org/trunk@30982


git-svn-id: http://core.svn.wordpress.org/trunk@30968 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-20 22:47:22 +00:00
Scott Taylor
a0df295f5c Improve various @param docs.
See #30224.

Built from https://develop.svn.wordpress.org/trunk@30674


git-svn-id: http://core.svn.wordpress.org/trunk@30664 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-30 23:24:25 +00:00
Scott Taylor
ce05e4932f Use round() instead of floor() when resizing image dimensions.
Updates unit tests.

Props SergeyBiryukov, kitchin.
Fixes #18532.

Built from https://develop.svn.wordpress.org/trunk@30660


git-svn-id: http://core.svn.wordpress.org/trunk@30650 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-30 19:54:23 +00:00