Commit Graph

548 Commits

Author SHA1 Message Date
Scott Taylor
3bbed6ceac audio, video, and playlist shortcodes:
* Convert all instances of variable variables to array properties
* Eradicate use of `extract()`
* Rename `$atts` to `$html_atts` where collision with new `$atts` (shortcode atts holder) var might occur

See #22400, #27881.


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


git-svn-id: http://core.svn.wordpress.org/trunk@28170 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-07 17:36:18 +00:00
John Blackbourn
ab041987d3 Remove some unnecessary abstraction introduced in [28191]. See #27985.
Built from https://develop.svn.wordpress.org/trunk@28194


git-svn-id: http://core.svn.wordpress.org/trunk@28024 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-24 11:55:22 +00:00
John Blackbourn
d6e03df3c9 Avoid an expensive attachment counting query on the post editing screen. See #27985, for trunk.
Built from https://develop.svn.wordpress.org/trunk@28191


git-svn-id: http://core.svn.wordpress.org/trunk@28021 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-23 22:05:16 +00:00
Scott Taylor
55becc0dfd Refinements for asynchronous rendering in wp.mce.media.PlaylistView:
* Add `visibility: hidden` as an inline style to `<audio>` tags, there is a race with the stylesheet which can get enqueued in the body and loaded in the footer.
* When creating new instances of `MediaElementPlayer`, always push them onto a stack. Lone views can be responsible for multiple instances of the same shortcode on render.
* Rename `wp.media.mixin.unsetPlayer()` to `wp.media.mixin.unsetPlayers()` to reflect the above.
* Call `wp.media.mixin.unsetPlayers()` on the view's `unbind()` method, instead of inline in the `render()` method
* Make sure `WPPlaylistView` is instantiated for each editor instance
* Ensure that the `No Items Found` view state is not rendered when attachments actually do exist.

Props gcorne, wonderboymusic.
See #27899.



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


git-svn-id: http://core.svn.wordpress.org/trunk@28013 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-22 17:53:16 +00:00
Andrew Nacin
f6387ec25a Properly translate 'Select Poster Image'.
props dimadin.
see #27845, for trunk.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27999 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-19 18:28:15 +00:00
Andrew Nacin
e3a4c57563 Final about page.
props melchoyce, helen, wonderboymusic, nacin, and the illustrious Michael Pick.
fixes #27713, #27837.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27981 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-16 17:40:14 +00:00
Andrew Nacin
e8020e91fd Cast wp_count_attachments() before iterating it to avoid a notice when items exist without a mime type.
props bobbingwide.
fixes #27802.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27970 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-16 00:00:15 +00:00
Drew Jaynes
da896b7cf3 Inline documentation for hooks in wp-includes/media.php.
Props scottlee for the initial patch. Props kpdesign, DrewAPicture.
Fixes #27718.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27959 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-15 01:36:14 +00:00
Andrew Nacin
bfe44f07a3 Plupload: Restore 3.8 handles and filenames to avoid breaking plugins.
fixes #27763.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27939 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-14 00:07:16 +00:00
Andrew Nacin
e8da400c69 Don't show featured images for image attachments. Remove abstractions for now.
fixes #27673.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27881 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-08 17:40:28 +00:00
Andrew Nacin
4d6fcfdba1 Escape playlist data in templates.
props wonderboymusic.
fixes #27710.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27880 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-08 17:40:14 +00:00
Andrew Nacin
6b41f728d4 Header Images: Add suggested dimensions to the media workflow.
props ehg, gcorne.
see #21785.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27860 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-08 01:55:15 +00:00
Scott Taylor
42a66ea424 Make playlist tracks keyboard-accessible.
Fixes #27644.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27853 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-07 22:28:16 +00:00
Drew Jaynes
eebf49c180 General PHPDoc improvements in wp-includes/media.php for 3.9 functionality.
See #27700.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27834 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-07 20:38:15 +00:00
Scott Taylor
2c88f6e941 [27640] supported a caption for audio and video shortcodes as part of a UX iteration for the related MCE views. These captions have since be excluded, so the extra code should be removed (it was there for this sole reason).
See #27320.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27809 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-07 06:13:18 +00:00
Scott Taylor
7689cc4a74 When dynamically instantiating MediaElementPlayer instances in JS, preload="metadata" is extremely wonky. preload="none" lets the file play right away.
This has already been addressed for audio|video shortcodes, but also needs to be the case for playlists. When loading a playlist from a DOM cache or via AJAX, and when the sources match those already pre-loaded, the browser will sometimes donkey-punch the HTTP request for the first cached track selected.

Set `preload="none"` for the empty `<audio|video>` tag for playlists.

See commits related to #26779.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27804 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-06 21:33:15 +00:00
Scott Taylor
3238664215 Revert the changes made to data.title in playlist Underscore templates in [27869]. {{ data.title }} causes the title to be double-encoded on the front end.
See #27574.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27790 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-05 20:06:16 +00:00
Andrew Nacin
5e79b94d81 Header images: Handle cropping failures.
props ehg.
see #21785.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27776 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-04 15:48:16 +00:00
Andrew Nacin
079ddec045 Remove <br> elements for HTML5 galleries.
props obenland.
fixes #27637, see #26697.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27745 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-02 21:50:14 +00:00
Scott Taylor
55b61b7a70 Re-instantiate the MediaElementPlayer instance when switching mime types in playlists.
Fixes #27608.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27702 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-31 15:35:15 +00:00
Scott Taylor
01d2062af3 Cleanup up the display, escaping, and handling of ID3 data for media. Rename wp_get_relevant_id3_keys() to wp_get_attachment_id3_keys().
Props nacin.
See #27574.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27700 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-31 05:16:16 +00:00
Scott Taylor
b6ac65f07f Using percentages for playlist font-sizing was ambitious, but fell prey to editor-style.css in the admin. We have switched to using pixels. The editor styles were also forcing MediaElement players to inherit font-family, which was undesirable. And while we're at it, remove the top and bottom border from the playlist's list of tracks, which adds a dash of lovely to the playlist's default styles.
Props nacin for the addition of `&mdash;` in the playlist track list.
Fixes #27600.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27696 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-30 22:12:16 +00:00
Andrew Nacin
c95f232727 Cleanups for audio/video metadata, see [27862].
see #27574.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27695 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-30 21:08:14 +00:00
Scott Taylor
d947a55495 Metadata for audio and video files:
* Make attachment metadata for audio files editable by providing a metabox on the Edit Media page
* Standardize on using the attachment title everywhere
* Label the Caption and Description fields for audio and video appropriately
* Make the playlist Underscore templates more straightforward

See #27574.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27693 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-30 19:28:16 +00:00
Scott Taylor
c3a2635dc8 Return the default mime icon for playlist items that don't have a featured image in wp_prepare_attachment_for_js().
See [27640].


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


git-svn-id: http://core.svn.wordpress.org/trunk@27647 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-28 12:50:14 +00:00
Andrew Nacin
e0e8203af0 Galleries: Avoid doubling up clearing br elements.
props drozdz.
fixes #25537.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27635 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-28 02:41:15 +00:00
Scott Taylor
26773541ab Make sure Playlist states that are audio are marked as such with proper localized strings.
See #27554.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27625 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-27 18:37:17 +00:00
Scott Taylor
ff6c0731fa Move counting of attachments for audio/video to the backend, instead of using a reduce function in JS.
See #27554.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27624 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-27 18:16:16 +00:00
Scott Taylor
4f868ad882 There is no more video-playlist shortcode. To use video, it is now [playlist type="video" ....]. Also deleting core playlist styles. The style attribute is still supported, defaulting to light. Our core style support was 4-5 CSS rules.
See #27552. Leaving open for comments and potential bugs.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27621 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-27 17:58:15 +00:00
Scott Taylor
3171da9986 Pass the default mime-type icon as the image for a track when a featured image is not selected for an item in a playlist. Image display in general can be toggled on/off in the modal via Playlist Settings.
Fixes #27525.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27572 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-26 12:45:15 +00:00
Scott Taylor
eddc48def7 Don't make mce-view a dependency for media-audiovideo. Make media-audiovideo and wp-playlist dependencies for mce-view and only enqueue mce-view in the admin in wp_enqueue_media(). MCE views don't need to be included when media is loaded on the front end.
Fixes #27509.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27570 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-26 12:11:14 +00:00
Helen Hou-Sandí
52d2920891 Use Dashicon-style images for mime type icons. Actually moving to Dashicons via the font can be explored later, but has theme/plugin implications and requires too many changes to make it for 3.9. props melchoyce for the icons. fixes #26650.
Built from https://develop.svn.wordpress.org/trunk@27726


git-svn-id: http://core.svn.wordpress.org/trunk@27563 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-25 21:10:15 +00:00
Andrew Nacin
60676ee282 Introduce HTML5 caption support.
When a theme supports HTML5 captions via add_theme_support( 'html5', 'caption' ), figure and figcaption will be used instead of div and p.

There's a bonus. But first, some history: Captions were introduced with an inline style set for the container. This remains, as it is there to force captions to wrap. But this inline style included an extra 10 pixels, which have vexxed theme developers for years. While these pixels were designed to ensure padding around floated images, modern themes handle this with grace. The additional pixels thus feel encumbering.

As the new HTML5 gallery support avoids outputting default gallery styles (again, irking theme developers for years; see #26697), the new HTML5 caption support will also ditch these 10 pixels of unwanted hand-holding. 

The 10 pixels are also removed entirely in the visual editor (and more styles may also disappear here; see #26642), giving themes the power necessary to match the frontend styles.

The filter img_caption_shortcode_width added in 3.7 to work around this madness (see #14380) is skipped entirely when the theme supports HTML5 captions.

props obenland, azaozz.
see #26642. also fixes #9066.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27511 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-24 02:05:14 +00:00
Andrew Ozz
69b74a75cd Plupload: switch to urlstream upload method when the 'flash' runtime is used in non IE browsers. This ensures cookies are sent but limits the maximum file size that flash can handle.
By default only IE9 and older use flash so this change is mostly for completeness. It would affect only the (extremely rare) cases where a plugin disables the html5 runtime.
Built from https://develop.svn.wordpress.org/trunk@27662


git-svn-id: http://core.svn.wordpress.org/trunk@27505 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-23 23:45:19 +00:00
Scott Taylor
38d1fb971f Turn on thumbnail support for attachment:audio and attachment:video. Change conditionals to check for theme OR post type support when determining whether to turn on the Featured Image UI pieces in the admin.
Fixes #27460.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27500 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-23 02:35:14 +00:00
Scott Taylor
410646fc52 General code cleanup and improving video sizing in the admin:
* Abstract the setting of a primary button and its callback in `wp.media.view.MediaFrame.MediaDetails`
* Account for the existence or non-existence of `$content_width` in the TinyMCE views for video
* Make sure video models always have dimensions, even if they are the defaults
* For browsers that are not Firefox, don't use a timeout when setting the `MediaElementPlayer` instance in TinyMCE views

See #27320.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27498 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-22 23:26:17 +00:00
Scott Taylor
615dd5331b Unifying media controls and supporting playlists in the editor:
* Support a `caption` attribute for audio and video shortcodes
* In `wp.media.audio|video`, rename `update` to `shortcode` to allow these models to share the same mixins as `wp.media.collection` subclasses
* When sending an audio or video shortcode to the editor, create a default caption if the user hasn't entered one. This currently only displays in the editor, not on the front end. Captions aren't tied to a specific attachment here because external sources are supported.
* In the `wp.mce.media` mixin, in the `edit` method, read `attr` instead of `data` when attempting to parse the encoded shortcode. `data` does not automatically update when the attribute changes. This was a blessing to debug.
* Add `wp.mce.media.PlaylistView` to support playlist views in TinyMCE
* Expose `WPPlaylistView` to global scope and suppress auto-parsing of playlist nodes when in the admin. Allow `WPPlaylistView` to be passed `metadata` on creation instead of requiring a JSON blob to be parsed.
* Remove all of the playlist logic from the `wpgallery` TinyMCE plugin.
* In `wp_prepare_attachment_for_js()` return more data for audio/video so that playlists can have parity in the admin/front end.

See #27320.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27483 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-20 13:33:14 +00:00
Andrew Nacin
30fd56b3dc Only enqueue the image editor in the media modal in the admin.
props gcorne.
see #21811.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27468 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-19 21:16:14 +00:00
Andrew Nacin
deb8779af5 More translation cleanups.
Affects widgets (see #27112), custom headers (see #21785), theme installer (see #27055, reverts [27614]), and some media stuff. Untranslates some complicated strings that need additional study.

see #27453.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27463 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-19 08:18:14 +00:00
Scott Taylor
a17dd704c4 Create a new file, media-audiovideo.js, to house all of the audio and video JS code in core.
UX Changes:
* Don't add a menu item for "Add Audio|Video Source"
* In the Audio|Video Details modal, add buttons and some suggestive text for adding alternate playback sources
* Don't show "Create Audio|Video Playlist" menu items until the user has uploaded audio or video files

See #27437.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27451 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-19 05:31:15 +00:00
Scott Taylor
be70cf26fe Account for preload="metadata" in audio and video shortcodes when multiple versions of the same <source> appear on the page by appending a query arg to "cache-bust" passed sources. The query arg is used to make the sources "unique." They will still be cached by the browser and won't bust the cache on every request.
Fixes #26779.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27362 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-13 03:42:14 +00:00
Scott Taylor
48e05e607c Change string "Create Playlist" to "Create Audio Playlist." Open new tickets for individual issues.
Fixes #26631. 


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


git-svn-id: http://core.svn.wordpress.org/trunk@27355 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-12 04:40:16 +00:00
Andrew Nacin
a589d9d757 Add header image uploads with cropping to the customizer.
props mcsf, ehg, gcorne.
see #21785.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27339 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-11 04:13:16 +00:00
Scott Taylor
d2c0cdc5de Add a filter and document it: playlist_styles. Allows users to roll their own playlist themes.
Props DrewAPicture for the docs.
See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27332 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-09 23:37:15 +00:00
Scott Taylor
6c3e050724 Playlists:
* Add an action, `wp_playlist_scripts`, where a user can turn off all default script and style loading for playlists and roll their own.
* Move the script and style loading for playlists to a function, `wp_playlist_scripts( $type )`, that hooks into `wp_playlist_scripts`.
* Make the `<noscript>` playlist output an `<ol>`, instead of a list of links with no surrounding markup.

See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27330 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-09 22:45:14 +00:00
Scott Taylor
f078f3e10e Video editing in the media modal:
* Add a state: `Add Subititles`
* Add `text/vtt` to the list of allowed mime-types, files end in `.vtt`. `.srt` files are served as `text/plain`.
* The content body of a video shortcode should be used for adding `<track>` elements only. This happens dynamically in the modal. If added by hand, they can still be parsed and managed.

See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27325 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-09 10:32:15 +00:00
Scott Taylor
f7af18e1d6 Audio/Video shortcodes in the media modal:
* Make a generic model, `wp.media.model.PostMedia`, which replaces `wp.media.model.PostAudio` and `wp.media.model.PostVideo`
* Make a generic library, `wp.media.controller.MediaLibrary`, which replaces `wp.media.controller.ReplaceVideo` and `wp.media.controller.ReplaceAudio`
* `wp.media.controller.MediaLibrary` is used to create new states that want to load a library filtered by type, making it incredibly simple to add states to frames. See `wp.media.view.MediaFrame.VideoDetails` and `wp.media.view.MediaFrame.AudioDetails`.

UX changes:

* Add the ability to manage HTML5 fallbacks - add additional `<source>`s or remove specific `<source>`s
* In the Video Details state, add the ability to select a poster image

See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27322 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-09 05:25:15 +00:00
Scott Taylor
dc00fc7e7f Audio/Video shortcodes in the media modal:
* Add `embedMimes` to `_wpMediaViewsL10n`
* Use `escape` instead of `interpolate` when setting attributes in Underscore templates
* When creating the `<audio>` and `<video>` tags dynamically, set inner `<source>` nodes instead of the `src` attribute and properly set the mime-type per source as the `type` attribute. This is also drastically reduces the amount of code used to generate the tags.

See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27320 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-09 01:01:14 +00:00
Andrew Nacin
fabb6d4898 Allow $crop in add_image_size() to receive crop anchors (top, left, right, bottom, center).
This also applies to set_post_thumbnail_size() and image_resize_dimensions().

props bradt, wonderboymusic, DH-Shredder.
fixes #19393.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27317 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-08 06:14:15 +00:00
Helen Hou-Sandí
4bb7e03548 At long last, a first pass at bringing the image editor into the media modal. props gcorne, DH-Shredder, tomauger. see #21811.
Built from https://develop.svn.wordpress.org/trunk@27445


git-svn-id: http://core.svn.wordpress.org/trunk@27292 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-06 22:55:14 +00:00
Scott Taylor
ff8844deae Add TinyMCE placeholders for audio and video shortcodes.
* Add `wp.media.mixin`.
* Add `wp.media.audio` and `wp.media.video`.
* Add `wp.media.model.PostAudio` and `wp.media.model.PostVideo`
* Add `wp.media.controller.AudioDetails` and `wp.media.controller.VideoDetails`.
* Add `wp.media.controller.ReplaceAudio` and `wp.media.controller.ReplaceVideo`.
* Add `wp.media.view.MediaFrame.AudioDetails` and `wp.media.view.MediaFrame.VideoDetails`.
* Add `wp.media.view.AudioDetails` and `wp.media.view.VideoDetails`.
* Update the `wpgallery` TinyMCE plugin.
* Display audio and video players in the media modal when shortcode is clicked.
* Provide a UI to edit shortcode attributes in the media modal.
* Provide a UI to replace the `src` media file in an `audio` or `video` shortcode.

See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27258 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-05 15:06:14 +00:00
Helen Hou-Sandí
886a8e9549 Add a class attribute to the caption shortcode to allow for additional classes on the caption container. props rhyswynne, mcadwell. fixes #25295.
Built from https://develop.svn.wordpress.org/trunk@27404


git-svn-id: http://core.svn.wordpress.org/trunk@27251 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-05 04:54:15 +00:00
Andrew Nacin
0422c70fdb Rename maybe_regenerate_attachment_metadata() to wp_maybe_generate_attachment_metadata(), to match wp_generate_attachment_metadata().
fixes #26825.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27245 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-04 20:07:14 +00:00
Andrew Nacin
978e394248 Do not output default gallery styles if the theme has opted into HTML5 galleries.
fixes #27045. see #26697.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27244 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-04 18:53:13 +00:00
Scott Taylor
e92770ba93 * Videos should always render at the same aspect ratio.
* Don't force a pseudo-mime-type for `.m4v` files
* Uniformly adapt to `$content_width` when setting video dimensions on the front end
* Add the `height` attribute to the initial `<video>` in the video playlist JS template
* Add some defensive/responsive CSS for a/v on the Edit Media page

See #27243.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27180 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-28 21:28:14 +00:00
Scott Taylor
db1a8785b5 Some playlist cleanup:
* Check properties against the `window` object when using `_.isUndefined()` on globals
* Fix a typo for `$safe_type` introduced in [27311]

See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27172 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 21:38:17 +00:00
Andrew Ozz
21b74a037d Remove debugging cruft, see #25663
Built from https://develop.svn.wordpress.org/trunk@27318


git-svn-id: http://core.svn.wordpress.org/trunk@27170 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 20:15:16 +00:00
Andrew Ozz
d896fa2487 Upgrade Plupload to 2.1.1, props kovshenin, see #25663
Built from https://develop.svn.wordpress.org/trunk@27316


git-svn-id: http://core.svn.wordpress.org/trunk@27168 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 20:01:16 +00:00
Scott Taylor
f931929905 In the tracklist for playlist, fall back to title if there is no caption.
Props bassgang.
See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27165 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 15:22:13 +00:00
Scott Taylor
7d57ca6c2c Add some security hardening to passed playlist attributes.
Props xknown.
See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27164 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 15:20:14 +00:00
Andrew Nacin
e8819fc636 Introduce HTML5 gallery support.
When a theme supports HTML5 galleries via add_theme_support( 'html5', 'gallery' ), figure and figcaption will be used instead of definition list markup.

props obenland.
fixes #26697.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27155 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-26 22:20:31 +00:00
Scott Taylor
c4cd842c29 Make sure data.meta always exists when rendering tracklists. Use $theme_width when rendering media tag in playlist template instead of recalculating.
Props helen.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27125 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-25 19:30:14 +00:00
Scott Taylor
d5c0574c94 Get the proper image size for an item's thumb in playlist JSON.
See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27102 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-24 21:10:12 +00:00
Scott Taylor
d393e38624 Supply mime-type instead of extension for an item's type property in playlist JSON.
See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27101 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-24 21:05:16 +00:00
Drew Jaynes
de43247d4c Inline documentation improvements for wp_get_playlist().
* Adds a missing `@param` description in the PHPDoc.
* Adds hook documentation for the `post_playlist` filter.
* Other comment cleanup.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27097 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-24 19:42:13 +00:00
Scott Taylor
943f295d2e Add core support for Playlists and Video Playlists.
* Playlists operate like galleries in the admin. 
* Provide default UI and JS support in themes using MediaElement and Backbone. 
* The shortcodes are clickable, editable, and configurable using the media modal. 
* Playlists support images for each item, whether or not the current theme supports images for `attachment:audio` and `attachment:video`
* Playlists respond to `$content_width` and resize videos accordingly.
* All playlist data is included inline, using a script tag with `type="application/json"`, allowing anyone to unenqueue the WP playlist JS and roll their own.
* Playlist styles are minimal and work out of the box in the last 5 default themes. They inherit and adapt to the current theme's font styles, and their rules are easily overrideable.

See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27096 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-24 18:08:16 +00:00
Scott Taylor
7ff83d46aa Allow pseudo post types attachment:audio and attachment:video to get the media modal on Edit Media when they support featured images.
Introduces `post_supports_thumbnails( $post )` and `theme_supports_thumbnails( $post )` to cut down on duplicated code everytime this needs to be checked. There will be more cases forthcoming.

See #26631.


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


git-svn-id: http://core.svn.wordpress.org/trunk@27066 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-20 17:50:13 +00:00
Andrew Nacin
65f4497766 has_image_size()'s parameter should be required. see [27139], see #26951.
Built from https://develop.svn.wordpress.org/trunk@27140


git-svn-id: http://core.svn.wordpress.org/trunk@27007 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-08 23:53:12 +00:00
Drew Jaynes
127907a85b Inline documentation tweaks for has_image_size() and remove_image_size().
See #26951.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27006 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-08 22:55:11 +00:00
Andrew Nacin
53867f3081 Add remove_image_size() and tests for it and has_image_size(), added in [27128].
props mordauk, markoheijnen.
fixes #26768. see #26951.

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


git-svn-id: http://core.svn.wordpress.org/trunk@26996 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-08 00:41:13 +00:00
Scott Taylor
2610e6d4ff Introduce has_image_size( $name ), a utility function that helps avoid loading the $_wp_additional_image_sizes global.
Props mordauk.
Fixes #26951.


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


git-svn-id: http://core.svn.wordpress.org/trunk@26995 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-08 00:20:13 +00:00
Scott Taylor
03dda3b273 Introduce maybe_regenerate_attachment_metadata( $attachment ). On the Edit Media screen, call it for Audio and Video files.
The functions checks if the item is lacking metadata altogether. If a video or audio file was uploaded prior to 3.6, it does not have any metadata. This tries to fix it. Implements locking via a transient to protect against this running in parallel with another request.

This is the minimum viable product for #26825, but leaving the ticket open unless this function needs to be called in other places.

See #26825.


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


git-svn-id: http://core.svn.wordpress.org/trunk@26994 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-07 22:41:12 +00:00
Scott Taylor
228fc639b9 When a video shortcode has content in its body, append it as inner HTML in the resulting <video>.
Reverts [27096].
Fixes #26628.
See #27016.


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


git-svn-id: http://core.svn.wordpress.org/trunk@26968 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-05 01:43:12 +00:00
Scott Taylor
84911b9707 Let the video shortcode accept a YouTube URL as the value of its src attribute, as MediaElement.js supports Chromeless YouTube videos by using a pseudo-mime-type video/youtube.
HTTP and HTTPS www, non-www, and short url fronts are supported:
http://www.youtube.com/watch 
https://www.youtube.com/watch
http://youtube.com/watch
https://youtube.com/watch
http://youtu.be
https://youtu.be

Fixes #24764.


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


git-svn-id: http://core.svn.wordpress.org/trunk@26936 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-31 18:59:13 +00:00
Scott Taylor
e1759d668a For starters, [27050] is rad. This just cleans up some extra new lines that were littered about, updates *some* of the inline docs (needs more), moves wp.media.controller.ImageDetails closer to its parent class, and de-dupes some code in media-template.php.
See #24409.


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


git-svn-id: http://core.svn.wordpress.org/trunk@26925 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-28 23:21:13 +00:00
Andrew Ozz
33eedc570b Introduce Edit Image (single mode) in the media modal and use it to edit images inserted in the editor. Adds new feature: replace an image in the editor. Props gcorne, see #24409.
Built from https://develop.svn.wordpress.org/trunk@27050


git-svn-id: http://core.svn.wordpress.org/trunk@26924 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-28 21:17:12 +00:00
John Blackbourn
e6da4eebe9 Inline documentation for core shortcode attributes.
Props DrewAPicture, johnbillion.
Fixes #25661.

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


git-svn-id: http://core.svn.wordpress.org/trunk@26796 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-07 16:07:12 +00:00
Andrew Nacin
b04d321fb9 Allow wp_enqueue_media() to "just work" in a customizer control.
props westonruter.
fixes #25618.

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


git-svn-id: http://core.svn.wordpress.org/trunk@26479 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-03 20:54:11 +00:00
Scott Taylor
e86b10131b Add a wp-video class to the div that wraps video shortcode output. It was previously hard to target.
Props nofearinc.
Fixes #25896.


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


git-svn-id: http://core.svn.wordpress.org/trunk@26419 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-02 16:32:10 +00:00
Andrew Nacin
5361a8abca Spell out duplicate hook locations.
props DrewAPicture.
fixes #25658.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25868 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-24 22:59:20 +00:00
Andrew Nacin
8ae8e01b67 Remove the old wp_auto_updates_maybe_update cron event. Schedule the new wp_maybe_auto_update event at 7 a.m. and 7 p.m. in the site's timezone.
see #27704.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25825 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-24 22:53:14 +00:00
Andrew Nacin
74488bdcb0 Spell out duplicate hook locations.
props DrewAPicture.
fixes #25658.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25780 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-22 17:22:11 +00:00
Andrew Nacin
f0eb99952c Make sure when resizing an image according to ratio we do not end up with a zero-pixel width or height.
props plocha.
fixes #25038.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25657 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-09 19:07:17 +00:00
Dominik Schilling
51ff617278 Allow to filter the link attribute via shortcode_atts_gallery. props iworks. fixes #24979.
Built from https://develop.svn.wordpress.org/trunk@25665


git-svn-id: http://core.svn.wordpress.org/trunk@25581 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-02 20:46:09 +00:00
Sergey Biryukov
7c5d11d671 Make the arguments of 'wp_audio_shortcode_override' and 'wp_video_shortcode_override' more consistent with the ones of 'img_caption_shortcode' and 'post_gallery' filters.
see #25313.
Built from https://develop.svn.wordpress.org/trunk@25485


git-svn-id: http://core.svn.wordpress.org/trunk@25406 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-18 22:06:09 +00:00
Sergey Biryukov
dd6e39bfb1 Replace non-functional 'wp_audio_shortcode_handler' and 'wp_video_shortcode_handler' filters with 'wp_audio_shortcode_override' and 'wp_video_shortcode_override'.
props ericlewis, SergeyBiryukov.
fixes #25313.
Built from https://develop.svn.wordpress.org/trunk@25484


git-svn-id: http://core.svn.wordpress.org/trunk@25405 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-18 21:20:09 +00:00
Andrew Nacin
031576d79e Introduce a img_caption_shortcode_width filter for controlling the inline style of the image caption shortcode.
props iandunn for the initial patch.
fixes #14380.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25365 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-14 20:45:09 +00:00
Sergey Biryukov
045f93f3b2 Ignore case differences when checking file extension in wp_audio_shortcode() and wp_video_shortcode(). props nofearinc, bhengh. fixes #25140.
Built from https://develop.svn.wordpress.org/trunk@25128


git-svn-id: http://core.svn.wordpress.org/trunk@25108 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-26 19:21:10 +00:00
Andrew Nacin
6861353737 Set audio player to width: 100% and avoid breaking the layout in iOS when we fall back to a link.
props markjaquith, davidjlaietta.
fixes #24896.



git-svn-id: http://core.svn.wordpress.org/trunk@24948 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-01 14:48:39 +00:00
Andrew Nacin
7d53482cee Use wp_get_mime_types() when calling wp_check_filetype() in the audio and video shortcodes. fixes #24911.
git-svn-id: http://core.svn.wordpress.org/trunk@24944 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-01 13:33:15 +00:00
Andrew Nacin
bd1d854f10 When rendering an audio or video shortcode in IE 6-8, call document.createElement() as a poor man's HTML5 shiv. see #24902.
git-svn-id: http://core.svn.wordpress.org/trunk@24931 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-31 20:36:47 +00:00
Andrew Nacin
70109f6202 Update HTML classes in the audio and video shortcodes. props rfair404. fixes #24820.
git-svn-id: http://core.svn.wordpress.org/trunk@24857 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-29 06:51:46 +00:00
Mark Jaquith
0a2ca92b33 Fix a variable typo in get_post_gallery_images().
props rodrigosprimo. Fixes #24202 for trunk.

git-svn-id: http://core.svn.wordpress.org/trunk@24837 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-29 00:52:31 +00:00
Mark Jaquith
48eefd5240 Oops. Forgot that we support a PHP version from 2007. Either that or I've been doing a lot of JS.
Props kovshenin. See [24789].

git-svn-id: http://core.svn.wordpress.org/trunk@24792 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-24 06:36:29 +00:00
Mark Jaquith
290d61138c Fix some sizing issues with video embeds, and improve video/audio embed shortcode flexibility.
* `loop`, `autoplay`, and `preload` are now available via the shortcode. Use them non-annoyingly, please!
* Attributes that pass through the filters are now proper key/value pairs, not an array of `key="value"` strings.
* `preload` defaults to `metadata` for videos. This fixes the vertical video preview and Safari ogv/webm playback issues.
* Wrap a div around video embeds to combat a ME.js issue with responsive width=100% themes. Props kovshenin.

Fixes #24134, #24798.

git-svn-id: http://core.svn.wordpress.org/trunk@24789 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-24 05:52:49 +00:00
Andrew Nacin
2c67dea9bc Media: Add awareness to Attachment Display Settings that audio and video can be embedded.
Also:
 * Add file length metadata to Attachment Details.
 * Round the kb/s bitrate on post.php.

fixes #24449.



git-svn-id: http://core.svn.wordpress.org/trunk@24777 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-23 05:39:08 +00:00
Andrew Nacin
769e3e9b5d Drop get_images_in_content() and get_image_in_content(), until recently get_content_image(s)(). fixes #24202.
git-svn-id: http://core.svn.wordpress.org/trunk@24685 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-12 20:34:07 +00:00
Andrew Nacin
75ab12808b Add types parameter to get_media_embedded_in_content(). props aaroncampbell. see #24202.
git-svn-id: http://core.svn.wordpress.org/trunk@24684 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-12 19:51:59 +00:00
Andrew Nacin
4a1e326c1f Simplify and reduce the new media/content extraction functions.
The URL extraction function is now get_url_in_content(). For more, see #24202.

Also adds filters to get_post_galleries() and get_post_gallery(). fixes #24309.



git-svn-id: http://core.svn.wordpress.org/trunk@24682 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-12 19:34:59 +00:00
Andrew Nacin
44abe2e502 Use wp_basename() in newer media code for filenames to avoid encoding issues on display. props SergeyBiryukov, fixes #23267.
git-svn-id: http://core.svn.wordpress.org/trunk@24585 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-08 13:55:50 +00:00
Mark Jaquith
86c7950173 Make sure get_post_gallery() doesn't ever return an array when asked for a string.
props kovshenin, wonderboymusic, ocean90. fixes #24270.

git-svn-id: http://core.svn.wordpress.org/trunk@24572 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-05 20:54:46 +00:00
Mark Jaquith
5da392a62f Drop some wrapper functions
* `get_attached_audio()` (use `get_attached_media( 'audio' )`)
* `get_attached_images()` (use `get_attached_media( 'image' )`)
* `get_attached_videos()` (use `get_attached_media( 'video' )`)

props wonderboymusic. fixes #23843.

git-svn-id: http://core.svn.wordpress.org/trunk@24571 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-05 20:41:49 +00:00
Dominik Schilling
8c9c035d94 Remove the_post_format_gallery(). see #24452.
git-svn-id: http://core.svn.wordpress.org/trunk@24570 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-05 20:37:12 +00:00
Dominik Schilling
26873abe38 Remove img_html_to_post_id(). It's unused since [24555]. fixes #24610.
git-svn-id: http://core.svn.wordpress.org/trunk@24569 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-05 18:45:41 +00:00
Mark Jaquith
d0d6e4aa51 Remove some more post format functions.
props wonderboymusic. fixes #24610.

git-svn-id: http://core.svn.wordpress.org/trunk@24555 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-04 06:57:00 +00:00
Dominik Schilling
6ba7413fbd Lose content removal and splitting from get_content_url(). And remove unneeded lines from [24400].
fixes #24484.

git-svn-id: http://core.svn.wordpress.org/trunk@24554 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-03 22:36:13 +00:00
Andrew Nacin
66054d7ffe Allow gallery to be inserted with no links on the images. props chipbennett, helgatheviking, aaroncampbell, wonderboymusic. fixes #18178.
git-svn-id: http://core.svn.wordpress.org/trunk@24550 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-03 20:43:19 +00:00
Andrew Nacin
98832852dc Remove attachment_url_to_postid(). props kovshenin, wonderboymusic. see #24458.
git-svn-id: http://core.svn.wordpress.org/trunk@24548 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-03 20:23:48 +00:00
Andrew Nacin
6500a24719 Call shortcode functions directly. props kovshenin, fixes #24505.
git-svn-id: http://core.svn.wordpress.org/trunk@24547 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-03 20:19:00 +00:00
Mark Jaquith
28e3c51dab Lose content removal and splitting from the media extraction functions.
see #24484

git-svn-id: http://core.svn.wordpress.org/trunk@24400 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-06-03 19:27:58 +00:00
Andrew Nacin
c5033c96f5 No need for a pass-by-reference here. props sunnyratilal, fixes #24433.
git-svn-id: http://core.svn.wordpress.org/trunk@24376 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-27 15:47:46 +00:00
Sergey Biryukov
5f05c95014 Add @return for get_the_post_format_image(). Make sure the function always returns a string. props tollmanz. fixes #24414. see #24348.
git-svn-id: http://core.svn.wordpress.org/trunk@24352 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-24 23:56:00 +00:00
Jon Cave
94a56f3bbf Properly escape source parameter in audio/video shortcodes. See #23282.
git-svn-id: http://core.svn.wordpress.org/trunk@24334 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-23 17:45:59 +00:00
Sergey Biryukov
71b6d68ad5 Switch to a CSS comment in gallery_shortcode() to avoid breaking markup when the shortcode is used inside an HTML comment. props mark-k, aaroncampbell. fixes #23787.
git-svn-id: http://core.svn.wordpress.org/trunk@24329 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-22 22:27:53 +00:00
Ryan Boren
f14b0c3e13 Remove redundant post ID validation.
Props SergeyBiryukov
fixes #24199


git-svn-id: http://core.svn.wordpress.org/trunk@24249 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-14 13:57:59 +00:00
Mark Jaquith
74c6071b9d Improve regular expressions by using a backreference to match right quote of quote pair when matching attributes.
props kovshenin. see #24225.

git-svn-id: http://core.svn.wordpress.org/trunk@24241 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-10 22:54:33 +00:00
Mark Jaquith
34455bbbd8 Return the requested image size in get_the_post_format_image()
props kovshenin. fixes #24188.

git-svn-id: http://core.svn.wordpress.org/trunk@24240 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-10 22:49:24 +00:00
Ryan Boren
bb51b4e239 Avoid warning in gallery_shortcode() when called outside of post context.
Props kovshenin
fixes #24272


git-svn-id: http://core.svn.wordpress.org/trunk@24198 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-08 16:57:58 +00:00
Andrew Nacin
3139a0451e Variables passed by reference do not need to be set first.
props kovshenin.
see #24222.



git-svn-id: http://core.svn.wordpress.org/trunk@24129 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-29 14:48:31 +00:00
Sergey Biryukov
93b0b5c32c Remove extraneous function parameters in wp_video_shortcode(). props rlerdorf. see #24210.
git-svn-id: http://core.svn.wordpress.org/trunk@24122 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-29 00:56:27 +00:00
Sergey Biryukov
d1966150dc Fix typo in get_the_post_format_image(). props rlerdorf. see #23964. see #24210.
git-svn-id: http://core.svn.wordpress.org/trunk@24118 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-28 06:36:39 +00:00
Mark Jaquith
e2fbad7ee0 the_post_format_gallery() (and Twenty Thirteen using it).
fixes #24126. props obenland, wonderboymusic.

git-svn-id: http://core.svn.wordpress.org/trunk@24093 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-25 07:42:59 +00:00
Mark Jaquith
3f231a1758 Smarter structured post format caching.
fixes #24002. props kovshenin, wonderboymusic.

git-svn-id: http://core.svn.wordpress.org/trunk@24091 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-25 07:10:35 +00:00
Mark Jaquith
254ea5ad54 Fix issue with [embed] in post_format_compat.
props kovshenin. fixes #24070.

git-svn-id: http://core.svn.wordpress.org/trunk@24083 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-25 03:52:05 +00:00
Mark Jaquith
d9d5c5eb03 Allow the_post_format_image() to choose an image size late in the game.
props davidwilliamson, SergeyBiryukov. fixes #23945.

git-svn-id: http://core.svn.wordpress.org/trunk@24079 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-25 02:28:30 +00:00
Mark Jaquith
cd0bbd830c Fix mangled image output in compat function.
props wonderboymusic. see #24175.

git-svn-id: http://core.svn.wordpress.org/trunk@24078 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-25 02:18:49 +00:00
Mark Jaquith
0a49442e35 Multiple improvements to image post format insertion and display.
* get_tag_regex() altered based on Unit Tests.
* Changes to post-formats.js to provide size and link context during image selection.
* Captions are now output in the_post_format_image() when present.
* The meta value for url is respected for the image post format when the HTML in the image meta doesn't include a link

props wonderboymusic. fixes #23965, #23964. see #24147, #24046.

git-svn-id: http://core.svn.wordpress.org/trunk@24066 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-22 22:11:42 +00:00
Mark Jaquith
412161de03 Standardize post format postmeta keys around the ones already used by the Crowd Favorite plugin.
props wonderboymusic. fixes #24010.

git-svn-id: http://core.svn.wordpress.org/trunk@24021 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-17 20:57:44 +00:00
Mark Jaquith
56d5d62a19 New Post Format UI chooser treatment in response to testing.
* Bigger icons
* Format description under each
* UI hides after choice
* Saving without choosing implies "Standard"
* Helpful text, with "Change format" link

see #24046. props lessbloat, wonderboymusic.

git-svn-id: http://core.svn.wordpress.org/trunk@24006 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-17 04:08:46 +00:00
Mark Jaquith
b6ae99abdb Make get_the_post_format_image() work when intermediate_image_sizes is empty.
props lancewillett. fixes #24060.

git-svn-id: http://core.svn.wordpress.org/trunk@24003 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-16 21:31:37 +00:00
Sergey Biryukov
508cbd464b * Add start/end markers to the regex patterns in audio and video embed handlers.
* Move the handler functions registration to wp_maybe_load_embeds().
* Rename both functions to match the wp_embed_handler_* pattern.
* Move the functions closer to wp_embed_handler_googlevideo().

props kovshenin. fixes #24092.

git-svn-id: http://core.svn.wordpress.org/trunk@24000 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-16 11:06:31 +00:00
Mark Jaquith
df5e61ad54 Link post format images if a URL is provided. Make the URL available via get_the_post_format_url().
props wonderboymusic, obenland. fixes #23964.

git-svn-id: http://core.svn.wordpress.org/trunk@23992 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-14 16:59:52 +00:00
Mark Jaquith
de45c749df Constrain large videos from rendering bigger than $content_width on both frontend and backend.
props wonderboymusic. fixes #23955.

git-svn-id: http://core.svn.wordpress.org/trunk@23989 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-14 16:43:26 +00:00
Dominik Schilling
f715505934 Don't print links for unsupported file types in wp_video_shortcode()/wp_audio_shortcode(). Return them instead.
props SergeyBiryukov. fixes #24075.

git-svn-id: http://core.svn.wordpress.org/trunk@23988 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-14 10:33:44 +00:00
Mark Jaquith
697bf3d70e Only remove ONE piece of media from the content in setup_postdata().
props wonderboymusic. fixes #24052.

git-svn-id: http://core.svn.wordpress.org/trunk@23984 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-14 01:11:44 +00:00
Mark Jaquith
4a3ced1433 Enforce video dimensions.
props wonderboymusic. see #23831.

git-svn-id: http://core.svn.wordpress.org/trunk@23969 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-11 22:34:05 +00:00
Sergey Biryukov
09317ba345 Use the function argument instead of the $post global in get_the_post_format_image(). props kovshenin. fixes #24003.
git-svn-id: http://core.svn.wordpress.org/trunk@23938 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-09 16:28:09 +00:00
Sergey Biryukov
0cf4b02a4f Consistently use the function argument instead of the $post global in get_the_post_format_media(). props kovshenin. fixes #24003.
git-svn-id: http://core.svn.wordpress.org/trunk@23937 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-09 13:42:53 +00:00
Andrew Nacin
47b7e15f2a Third parameter for shortcode_atts() for audio and video shortcodes. props obenland, see #23282.
git-svn-id: http://core.svn.wordpress.org/trunk@23921 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-05 17:46:31 +00:00
Mark Jaquith
15dc5a3718 Standardize the post format theme API functions with the_post_format_THING() and get_the_post_format_THING().
fixes #23927

git-svn-id: http://core.svn.wordpress.org/trunk@23899 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-04 08:09:02 +00:00
Mark Jaquith
fec4b66f5b Sanity checks on image metadata to avoid warnings, etc.
fixes #23733. props wonderboymusic.

git-svn-id: http://core.svn.wordpress.org/trunk@23873 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-29 20:51:35 +00:00
Sergey Biryukov
c254787f0c Make a copy of post content to avoid changing it in get_the_image(). Remove unnecessary assignment from get_the_media(). props wonderboymusic for initial patch. fixes #23888.
git-svn-id: http://core.svn.wordpress.org/trunk@23869 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-29 19:10:31 +00:00
Mark Jaquith
22b45b2fbb Add compat code for 'image' post format.
see #19570. props wonderboymusic.

git-svn-id: http://core.svn.wordpress.org/trunk@23847 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-29 05:21:23 +00:00
Mark Jaquith
c93e0231af Post Format UI.
* Icons
* Selection
* Prompt text
* Special fields
* Styling
* Sparkles

This is going to need testing, polish, and love.

see #19570. props melchoyce, helen, wonderboymusic, lessbloat, rachelbaker, aaroncampbell, DrewAPicture, ryelle.

git-svn-id: http://core.svn.wordpress.org/trunk@23843 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-29 03:35:41 +00:00
Mark Jaquith
60073bb5a4 Move the "look for the first media attachment" code below the "look
in the post content for media" code, so that it is the method of last
resort. This way, if you attach AND embed media, you won't get duplication.

fixes #23879

git-svn-id: http://core.svn.wordpress.org/trunk@23840 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-28 07:28:27 +00:00
Mark Jaquith
2a45fd4453 Add some filters to the image extraction-from-post bits so people with
existing postmeta-based flows can hook in and make magic happen.

props wonderboymusic. fixes #22960.

git-svn-id: http://core.svn.wordpress.org/trunk@23821 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-27 19:07:58 +00:00
Mark Jaquith
1b83157127 Give themers tangible, user-friendly template functions to take full advantage of structured post formats.
* the_audio()
* the_video()
* the_image()
* get_the_media()

Also introduces:

* get_the_extra_content()
* the_extra_content()

Those two functions are like their non-extra versions, except that they
will have any post-format bits extracted. e.g. It's an image post, for
which the_image() will extract an <img /> tag. the_extra_content() will
output the content *without* that image.

props wonderboymusic. Herculean effort. fixes #23572

git-svn-id: http://core.svn.wordpress.org/trunk@23819 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-27 18:34:59 +00:00
Helen Hou-Sandí
b2f0b89062 Add a generic get_attached_media() function and use it in get_attached_audio|video|images. Add filters for the query args and resulting array. fixes #23843.
git-svn-id: http://core.svn.wordpress.org/trunk@23776 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-22 08:08:46 +00:00
Mark Jaquith
026d8847b4 Add functions to parse audio or video data out of arbitrary content or a post
props wonderboymusic. see #23572

git-svn-id: http://core.svn.wordpress.org/trunk@23774 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-22 05:55:08 +00:00
Mark Jaquith
6966294e55 Add functions to extract images from posts in various forms
props wonderboymusic. fixes #22960

git-svn-id: http://core.svn.wordpress.org/trunk@23772 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-22 05:20:38 +00:00