Commit Graph

6550 Commits

Author SHA1 Message Date
Jeremy Felt
188902ee09 Multisite: Don't store max_num_pages in WP_Site_Query query cache.
This value can be easily calculated with available data.

Props spacedmonkey.
Fixes #35791.


git-svn-id: https://develop.svn.wordpress.org/trunk@38002 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-07 15:31:45 +00:00
Boone Gorges
9d34db0590 Comments: Cache results of SELECT FOUND_ROWS() query.
When comment IDs are fetched from the cache rather than the database,
the subsequent `SELECT FOUND_ROWS()` query will not return the correct value.
To avoid unnecessary queries, we cache the results of the `found_comments`
query alongside the comment IDs.

Props spacedmonkey.
Fixes #37184.

git-svn-id: https://develop.svn.wordpress.org/trunk@38001 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-07 14:26:21 +00:00
Dominik Schilling
44da2a77b9 Text Changes: Unify a few more permission error messages which were missed in [37914].
Props ramiy.
Fixes #34521.

git-svn-id: https://develop.svn.wordpress.org/trunk@37999 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-07 11:32:44 +00:00
Jeremy Felt
01bcc4d40b Meta: Don't pass an empty $meta_key to get_metadata().
This doesn't break anything, but also isn't necessary.

Props sc0ttkclark.
See #35658.


git-svn-id: https://develop.svn.wordpress.org/trunk@37996 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-07 00:17:38 +00:00
Dominik Schilling
a1d37564b2 Post WordPress 4.6 Beta 2 version bump.
git-svn-id: https://develop.svn.wordpress.org/trunk@37993 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-06 18:38:54 +00:00
Dominik Schilling
cabbc22606 WordPress 4.6 Beta 2.
git-svn-id: https://develop.svn.wordpress.org/trunk@37992 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-06 18:24:58 +00:00
Helen Hou-Sandi
495ff0c633 Meta: Make registration error conditions return consistently.
In doing this, non-core object types are no longer forcibly blocked and are instead checked against `wp_object_type_exists()` which has a filterable return value. Still, filter that at your own risk.

props Faison for the initial patch.
see 35658.


git-svn-id: https://develop.svn.wordpress.org/trunk@37991 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-06 18:08:55 +00:00
Jeremy Felt
68b18c62f2 Meta: Ensure $object_subtype is available before use in register_meta().
Props sc0ttkclark.
See #35658.


git-svn-id: https://develop.svn.wordpress.org/trunk@37990 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-06 18:00:23 +00:00
Ryan McCue
194c8d0e33 HTTP API: Switch back to returning an array.
The array-compatibility object we started returning in r37428 unfortunately isn't enough like an array. In particular, `is_array()` checks fail, despite the object implementing ArrayAccess. Mea culpa.

This moves the WP_HTTP_Response object to a new http_response key in the array, and changes the value back to an actual array.

Fixes #37097.
See #33055.


git-svn-id: https://develop.svn.wordpress.org/trunk@37989 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-06 17:50:44 +00:00
Dominik Schilling
3edf3be241 Embeds: Don't print the HTML for a featured image if a post has no featured image.
See [36693].
Fixes #37288.

git-svn-id: https://develop.svn.wordpress.org/trunk@37988 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-06 17:07:19 +00:00
Sergey Biryukov
946e6ac8de I18N: Introduce an on/off switch for locales where comment number needs to be declined.
When enabled, the switch would override the theme's pseudo-plural `'% Comments'` string with a correct form of `_n( '%s Comment', '%s Comments', $number )`.

Historically, `comments_popup_link()` and `get_comments_number_text()` did not support plural forms and used a pseudo-plural style instead, so some locales were forced to come up with workarounds to display the number of comments in their language correctly.

This change should make those functions more i18n-friendly.

Fixes #13651.

git-svn-id: https://develop.svn.wordpress.org/trunk@37987 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-06 14:45:55 +00:00
Joe McGill
73cd1b3f8f Media: Don't use 'full' as array key in wp_calculate_image_srcset().
In `wp_calculate_image_srcset()` we get an array of image sizes
associated with an attachment and then add the original image's
information to the array before processing the `srcset`. In doing
so, we set the original data to a `$image_sizes['full']` key, which
could stomp on any custom image sizes using `full` as a size name.

This avoid the issues by adding the original data without a named
key, which is never referenced anyway.

Props jaspermdegroot.
Fixes #36345.

git-svn-id: https://develop.svn.wordpress.org/trunk@37986 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-06 14:04:06 +00:00
Sergey Biryukov
920f29616a Docs: Use 3-digit, x.x.x-style semantic versioning for _doing_it_wrong(), _deprecated_function(), _deprecated_argument(), and _deprecated_file() throughout core.
Props metodiew.
Fixes #36495.

git-svn-id: https://develop.svn.wordpress.org/trunk@37985 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-06 12:39:01 +00:00
Dominik Schilling
0037aa1dd5 Plugins: In plugin_basename() sort plugin paths before resolving symlinks.
`arsort()` sorts the paths reverse-alphabetically while preserving the keys. It results in a longer path being listed before a shorter one with the same base directory(ies).

Props jdgrimes, ocean90.
Fixes #28441.

git-svn-id: https://develop.svn.wordpress.org/trunk@37983 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-06 09:44:58 +00:00
Weston Ruter
ad52e49e4f Customize: Ensure that WP_Customize_Setting::value() can return a previewed value for aggregated multidimensionals.
Fixes #37294.


git-svn-id: https://develop.svn.wordpress.org/trunk@37982 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-06 05:58:28 +00:00
Weston Ruter
bddb06dd13 Customize: Ensure that WP_Customize_Nav_Menu_Section is able to represent a placeholder nav menu.
Placeholder nav menus (ones that have yet to be saved into the DB) have negative integer IDs.

Fixes #37293.
Props valendesigns, stubgo, westonruter.


git-svn-id: https://develop.svn.wordpress.org/trunk@37981 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-06 05:32:49 +00:00
Sergey Biryukov
eb176b40b8 I18N: Adjust the regex in wp_maybe_decline_date() to avoid \w and \b, as they don't work with Unicode characters correctly in PHP 5.3.3 and earlier versions.
See [37975] for unit tests.

See #36790.

git-svn-id: https://develop.svn.wordpress.org/trunk@37979 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-05 21:42:06 +00:00
Dominik Schilling
9037072780 Embeds: After [37745], check if a featured image exists before attaching an event listener.
Props swissspidy.
Fixes #35657.

git-svn-id: https://develop.svn.wordpress.org/trunk@37977 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-05 16:15:05 +00:00
Dominik Schilling
961dd36801 Plugins: Clean up uninstall_plugins option during database upgrade.
`register_uninstall_hook()` is designed to be given a function callback (or a static class variable), not an array/object instance. This got blocked in [16339] but the option itself was never cleaned up.

Props polevaultweb.
Fixes #31625.

git-svn-id: https://develop.svn.wordpress.org/trunk@37965 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-05 13:27:38 +00:00
Dominik Schilling
59b0096dfe Customize: Fix site icon preview in RTL.
* Set the direction of previews to LTR.
* Remove the ID attribute from the favicon preview in the customizer panel. The preview in the media modal uses the same ID which prevented updating the correct favicon preview.

Fixes #37286.

git-svn-id: https://develop.svn.wordpress.org/trunk@37964 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-05 12:41:38 +00:00
Dominik Schilling
9c4f1a3431 Customize: Add a RTL version of "browser.png" for the site icon preview.
Props sidati.
Fixes #37063.

git-svn-id: https://develop.svn.wordpress.org/trunk@37963 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-05 11:31:13 +00:00
Dominik Schilling
c259f4c35d General: Return "O B" when passing 0 to size_format().
Props swissspidy.
Fixes #36635.

git-svn-id: https://develop.svn.wordpress.org/trunk@37962 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-05 10:35:24 +00:00
Sergey Biryukov
f7c680e84f Media: Avoid PHP notices when trying to show a parent post title of an orphaned post type.
Props littler.chicken.
See #37186.

git-svn-id: https://develop.svn.wordpress.org/trunk@37952 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-04 19:33:43 +00:00
Sergey Biryukov
8ae60fd26c Docs: In wp_list_authors(), clarify that include and exclude arguments can also be an array.
Fix duplicated `exclude` argument description.

Props birgire.
Fixes #37239.

git-svn-id: https://develop.svn.wordpress.org/trunk@37949 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-04 14:33:03 +00:00
Dominik Schilling
9eb8e29357 Themes: After [37287], add deprecated theme features to the tag list in WP_Theme::translate_header().
Themes which are not yet updated can still have the old tags. This makes sure that these tags are still translated.

See #33407.

git-svn-id: https://develop.svn.wordpress.org/trunk@37946 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-04 09:57:37 +00:00
Gary Pendergast
b3a6124e3d General: Remove the Pragma header from responses.
`Pragma` is supposed to be a request header, but we've been including it in responses since the beginning of time.

This is a relic dating all the way back to b2, probably originally added because Internet Explorer version 5 and earlier didn't understand the `Cache-Control` header in responses, but they did (incorrectly) obey the `Pragma` header.

Internet Explorer 6 and 7 will obey the `Pragma` response header only if no other cache-related response headers are present (in our case, they are always present), and all other browsers ignore the `Pragma` response header.

Props geekysoft.
Fixes #37250.



git-svn-id: https://develop.svn.wordpress.org/trunk@37944 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-04 04:01:19 +00:00
Rachel Baker
855c081931 REST API: Reverse order of setting sanitization/validation, validating prior to sanitizing.
Fixes mistake in the current behavior, where the sanitization callback ran before the validation callback. Now the validation callback will run before the sanitization.

Props schlessera, rachelbaker.
See #37247.
Fixes #37192.




git-svn-id: https://develop.svn.wordpress.org/trunk@37943 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-02 23:02:45 +00:00
Weston Ruter
c8ebbb3e0d Customize: Reverse order of setting sanitization/validation, validating prior to sanitizing.
Reverses order where sanitization was being applied before validation originally in accordance with REST API logic.

Props westonruter, schlessera.
See #34893.
See #37192.
Fixes #37247.


git-svn-id: https://develop.svn.wordpress.org/trunk@37942 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-02 18:38:07 +00:00
Helen Hou-Sandi
e5e8889f78 Media: Only show parent post titles when the user can read said post.
fixes #37186.


git-svn-id: https://develop.svn.wordpress.org/trunk@37941 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-01 15:06:54 +00:00
Peter Wilson
f71ae5a0bb Users: Check zxcvbn is defined before calling.
Prevents JavaScript errors by checking zxcvbn is defined before calling.

Changes `wp.passwordStrength.meter()` to return `-1` if the strength of the password is unknown.

On the user profile screen, `generatePassword()` checks if the user has entered the password before setting the value of the password input box.

Props peterwilsoncc, adamsilverstein.
Fixes #34905.


git-svn-id: https://develop.svn.wordpress.org/trunk@37940 602fd350-edb4-49c9-b593-d223f7449a82
2016-07-01 12:44:43 +00:00
Helen Hou-Sandi
0d18f5136d Meta: Make retrieving registered metadata actually work.
The initial implementation used a `single` argument, which has now been added to the whitelist.

props Faison.
see #35658.


git-svn-id: https://develop.svn.wordpress.org/trunk@37934 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-30 21:24:59 +00:00
Helen Hou-Sandi
40d834dfc7 Meta registration: Ensure $args is an array and simplify compat logic.
props ocean90, sc0ttkclark.
see #35658.


git-svn-id: https://develop.svn.wordpress.org/trunk@37933 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-30 18:59:49 +00:00
Jeremy Felt
bba8b1271f Docs: Remove duplicate text for is_main_site() parameter.
Props Kenshino.
Fixes #37241.


git-svn-id: https://develop.svn.wordpress.org/trunk@37932 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-30 17:16:03 +00:00
Drew Jaynes
2220ac9425 Docs: Add changelog entries to the hook doc for the safe_style_css filter denoting recent CSS attribute additions.
* `min-height`, `max-height`, `min-width`, and `max-width` were added in 4.4, see [33739].
* `list-style-type` was added in 4.6, see [37898].

See #35877. See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@37931 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-30 17:01:51 +00:00
Jeremy Felt
229e0d5300 Multisite: Simplify logic assigning orderby in get_site_by_path().
Before [37628], there were 3 separate conditions for ordering by domain and/or path in `get_site_by_path()` that each resulted in it's own query. Now that `get_sites()` is used and supports `WP_Site_Query`, this can be simplified.

Props spacedmonkey.
Fixes #37215.


git-svn-id: https://develop.svn.wordpress.org/trunk@37930 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-30 16:58:06 +00:00
Jeremy Felt
7ddfbf589b Multisite: Revert [37874].
After [37923], `get_blog_details()` contained a now unnecessary attempt at back-compat for objects stored in cache.

See #36717.


git-svn-id: https://develop.svn.wordpress.org/trunk@37929 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-30 16:39:31 +00:00
Helen Hou-Sandi
4868cc600a Meta: Actually use fallback auth for the previous registration method.
see #35658.


git-svn-id: https://develop.svn.wordpress.org/trunk@37928 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-30 16:38:45 +00:00
Andrew Ozz
c2cf25a75a TinyMCE: do not trigger execCommand on loading, it focuses the editor in Chrome.
Fixes #37243.

git-svn-id: https://develop.svn.wordpress.org/trunk@37927 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-30 15:17:12 +00:00
Dominik Schilling
f3339ff9f0 Post WordPress 4.6 Beta 1 version bump.
git-svn-id: https://develop.svn.wordpress.org/trunk@37926 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-30 01:14:52 +00:00
Dominik Schilling
e7871d4633 WordPress 4.6 Beta 1.
git-svn-id: https://develop.svn.wordpress.org/trunk@37925 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-30 01:02:48 +00:00
Helen Hou-Sandi
97d9557b3f Introduce an expanded meta registration API.
`register_meta()` has been altered to accept an array of arguments as the third parameter in order to support its usage beyond XML-RPC, notably in the REST API and other projects that may build on top of meta, such as a potential Fields API. Arguments are whitelisted to reserve the right for core to add more later.

New functions added to complement this expansion are:
* `registered_meta_key_exists()`
* `unregister_meta_key()`
* `get_registered_meta_keys()`
* `get_registered_metadata()`
* A "private" function for the aforementioned whitelisting.

There still need to be lots of tests written for previous and new behaviors, and many things are subject to change. Maybe things will explode. #yolo

props jeremyfelt, ericlewis, sc0ttkclark, helen, rmccue, ocean90, voldemortensen.
see #35658.


git-svn-id: https://develop.svn.wordpress.org/trunk@37924 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-30 01:01:35 +00:00
Jeremy Felt
04fecbc5aa Multisite: Revert property type changes in WP_Site.
Partial revert of [37657]. Moving existing properties in `WP_Site` from public to private broke backwards compatibility in a pretty severe way. We made an initial attempt to work around this, but due to the variety of possible issues, moving forward does not seem wise.

Fixes #36717.


git-svn-id: https://develop.svn.wordpress.org/trunk@37923 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-29 22:07:17 +00:00
Dominik Schilling (ocean90)
f30e343b12 Script Loader: Use wp_parse_url() to fix URL parsing failures for PHP < 5.4.7.
See [37920].
See #34292.

git-svn-id: https://develop.svn.wordpress.org/trunk@37922 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-29 21:04:25 +00:00
Dominik Schilling (ocean90)
92dd472359 Script Loader: Introduce an API to register resource hints.
Resource hints allow browsers to prefetch specific pages or render them in the background to perform DNS lookups or to begin the connection handshake (DNS, TCP, TLS) in the background.

By default, `wp_resource_hints()` prints hints for "s.w.org" (the WordPress.org CDN) and for all scripts and styles which are enqueued from external hosts.
Use the `wp_resource_hints` filter to add custom domains and URLs for `dns-prefetch`, `preconnect`, `prefetch` or `prerender`.

Props voldemortensen, swissspidy.
Fixes #34292.

git-svn-id: https://develop.svn.wordpress.org/trunk@37920 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-29 19:35:27 +00:00
Drew Jaynes
328ca0ed12 Docs: Supplement a changelog entry in the DocBlock for the $id property in WP_Network.
See [37657] for where access was changed from public to private.
See [37870] for where the type was changed from `string` to `int`.

See #36717.


git-svn-id: https://develop.svn.wordpress.org/trunk@37919 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-29 19:34:04 +00:00
Jeremy Felt
fbe1dc18d0 Multisite: Lazy load extended WP_Site properties when requested.
In the past, `get_blog_details()` has been used to retrieve the `home`, `siteurl`, `blogname`, and `post_count` options for a site. By lazy loading properties in a `WP_Site` object, we can avoid having to use `get_blog_details()` and instead provide the properties as needed.

This introduces the global `site-details` cache group in which standard objects representing the site are stored. This will one day be a replacement for the `blog-details` cache group that is currently used in `get_blog_details()`.

This relies on the `ms_loaded` action introduced in [37916] as properties are not available via `get_option()` until multisite has been fully loaded.

Props flixos90.
Fixes #36935.


git-svn-id: https://develop.svn.wordpress.org/trunk@37918 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-29 19:31:49 +00:00
Drew Jaynes
194f176c8b Docs: Add changelog entries to the DocBlocks for the $blog_id and $site_id properties in WP_Site.
See [37657] for where access was explicitly changed from public to private.

See #36717.


git-svn-id: https://develop.svn.wordpress.org/trunk@37917 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-29 19:28:58 +00:00
Jeremy Felt
d014d198c9 Multisite: Fire the ms_loaded action after multisite's bootstrap has finished.
This allows code in `sunrise.php` and in core to know when multisite bootstrap is complete and when the `$current_site` and `$current_blog` globals are populated.

Fixes #37235.
Props flixos90.


git-svn-id: https://develop.svn.wordpress.org/trunk@37916 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-29 18:59:42 +00:00
Joe McGill
0b4798b2bc Post Thumbnails: Add helper functions for attachment captions.
This adds three new functions for getting/displaying attachment captions:

* `wp_get_attachment_caption` - Retrieves a caption for a specific attachment.
* `get_the_post_thumbnail_caption()` - Returns the post thumbnail caption.
* `the_post_thumbnail_caption()` - Displays the post thumbnail caption.

These are helpful for displaying a caption associated with an image directly
in a template, rather than using the caption shortcode.

This also introduces two new filters:

* `wp_get_attachment_caption` - Filters the value of `wp_get_attachment_caption()`.
* `the_post_thumbnail_caption` - Filters the display of the post thumbnail caption.

`the_post_thumbnail_caption()` is automatically filtered by `wptexturize()`,
`convert_smilies()`, and `convert_chars()` in `wp-includes/default-filters.php`.

Props flixos90, joemcgill.
Fixes #12235.

git-svn-id: https://develop.svn.wordpress.org/trunk@37915 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-29 17:28:00 +00:00
Dominik Schilling (ocean90)
206380180e Text Changes: Unify permission error messages.
The new format looks like "Sorry, you are not allowed to <action>.". This provides a consistent experience for all error messages related to missing permissions. It also reduces the number of similar strings and allows translators to provide a consistent style in their language.

Props ramiy, Presskopp.
Fixes #34521.

git-svn-id: https://develop.svn.wordpress.org/trunk@37914 602fd350-edb4-49c9-b593-d223f7449a82
2016-06-29 15:15:40 +00:00