Commit Graph

4948 Commits

Author SHA1 Message Date
Sergey Biryukov
ddec8a1c2b Customizer: WP_Customize_Cropped_Image_Control should extend WP_Customize_Image_Control, since Site Icon can only an image.
Props paulwilde.
Fixes #34250.

git-svn-id: https://develop.svn.wordpress.org/trunk@35018 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-10 23:24:46 +00:00
Jeremy Felt
d9edf86faf MS: Allow for a blog_upload_space setting of 0 to restrict uploads.
Previously, an value matching `empty()` would have been bypassed in favor of the default setting for 100MB.

Related #19538, r19639, r19652, where we saw the bug, fixed the bug, and then unfixed the bug so that it was not a surprise in a point release.

See #34037.


git-svn-id: https://develop.svn.wordpress.org/trunk@35016 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-10 23:14:11 +00:00
Scott Taylor
c123726ba0 Docs: some @global object vernaculars should be converted to the actual object type.
See #33491.


git-svn-id: https://develop.svn.wordpress.org/trunk@35013 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-10 15:44:16 +00:00
Weston Ruter
e158ff27de Customizer: Fix scalability performance problem for previewing multidimensional settings.
As the number of multidimensional settings (serialized options and theme mods) increase for a given ID base (e.g. a widget of a certain type), the number of calls to the `multidimensional` methods on `WP_Customize_Setting` increase exponentially, and the time for the preview to refresh grows in time exponentially as well.

To improve performance, this change reduces the number of filters needed to preview the settings off of a multidimensional root from N to 1. This improves performance from `O(n^2)` to `O(n)`, but the linear increase is so low that the performance is essentially `O(1)` in comparison. This is achieved by introducing the concept of an "aggregated multidimensional" setting, where the root value of the multidimensional serialized setting value gets cached in a static array variable shared across all settings.

Also improves performance by only adding preview filters if there is actually a need to do so: there is no need to add a filter if there is an initial value and if there is no posted value for a given setting (if it is not dirty).

Fixes #32103.


git-svn-id: https://develop.svn.wordpress.org/trunk@35007 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-10 09:05:04 +00:00
Drew Jaynes
48ceecafc7 Template: Pass the $post parameter to the the_permalink filter.
Props chriscct7.
Fixes #34234. See #23882.


git-svn-id: https://develop.svn.wordpress.org/trunk@35002 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-10 05:45:27 +00:00
Drew Jaynes
ed4b0aee3f Template: Rename the $id parameters in the_permalink(), get_the_permalink(), and get_permalink() to $post.
In all three cases, the functions can accept a post ID, a `WP_Post` object, or a falsey value, which defaults to the value of the global `$post`. Switching to `$post` in this context allows the parameters to better self-document and removes ambiguity in the code they are subsequently used in.

Props chriscct7 for the initial patch.
See #34234.


git-svn-id: https://develop.svn.wordpress.org/trunk@35001 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-10 05:40:14 +00:00
Boone Gorges
d6748bd2cb Return WP_Post objects from wp_get_object_terms().
A side effect of this change is that terms stored in the cache no longer have
an `object_id` associated with them. Previously, `object_id` had always been
cached when the term cache was populated via `wp_get_object_terms()`, a
strategy that was mostly harmless but still incorrect.

See #14162.

git-svn-id: https://develop.svn.wordpress.org/trunk@34999 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-10 03:38:41 +00:00
Boone Gorges
797ddb60ba Return WP_Term objects from get_terms().
Props boonebgorges, flixos90, DrewAPicture.
See #14162.

git-svn-id: https://develop.svn.wordpress.org/trunk@34998 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-10 02:12:40 +00:00
Boone Gorges
134a7af0fc Introduce WP_Term.
`get_term()` now returns a `WP_Term` object, instead of a `stdClass` object.
Cache support and sanitization filters for individual terms are now more
centralized. For example, `get_term_by()` is able to cast results of its query
to a `WP_Term` object by passing it through `get_term()`.

The `$taxonomy` parameter for `get_term()` is now optional, as terms ought to
be unique to a taxonomy (ie, shared terms no longer exist). In cases where
`get_term()` detects that the term matching the specified term_id is from the
wrong taxonomy, it checks to see if you've requested a shared term, and if so,
it splits the term. This is used only for fallback purposes.

The elimination of shared terms allows the caching strategy for terms to be
simplified. Individual terms are now cached in a single 'terms' bucket.

Props flixos90, boonebgorges, scribu, dipesh.kakadiya.
See #14162.

git-svn-id: https://develop.svn.wordpress.org/trunk@34997 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-10 01:58:37 +00:00
Drew Jaynes
1758d36a88 Template: Make it possible to both ''add'' and ''remove'' items from the page templates list using the theme_page_templates filter.
The `theme_page_templates` hook was originally added in [27297] as `page_templates`, and later renamed in [27470]. Previously, it was only possible to remove or rename page templates via this hook.

Fixes #13265. Fixes #25879.


git-svn-id: https://develop.svn.wordpress.org/trunk@34995 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-09 21:50:05 +00:00
Drew Jaynes
f26526264a Docs: Fix wrapping and syntax for a multi-comment in Walker_Comment::display_element().
See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34993 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-09 21:02:43 +00:00
Drew Jaynes
0d444dc6f9 Docs: Indent an example comment tree in the DocBlock for Walker_Comment::display_element() so it can be properly parsed in Markdown for the Code Reference.
See #32246.


git-svn-id: https://develop.svn.wordpress.org/trunk@34992 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-09 20:59:57 +00:00
Helen Hou-Sandi
bb31c1ada8 Notices: Update one more instance of white-on-white.
Because the media modal can be used on the front-end, the CSS needs to be added here rather than using the notice classes.

props paulwilde.
fixes #32244.


git-svn-id: https://develop.svn.wordpress.org/trunk@34990 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-09 17:46:24 +00:00
Boone Gorges
dc2b7c634d Ensure that WP_Date_Query accepts a value of 0 for 'hour'.
Props jim912.
Fixes #34228.

git-svn-id: https://develop.svn.wordpress.org/trunk@34989 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-09 16:32:59 +00:00
Sergey Biryukov
eeea5d753a Fix typo in get_avatar() and get_avatar_data() docs.
Props johnjamesjacoby.
Fixes #34232.

git-svn-id: https://develop.svn.wordpress.org/trunk@34988 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-09 15:51:37 +00:00
Sergey Biryukov
873dacf4a4 Fix typo in wp_rand() docs.
See #28633.

git-svn-id: https://develop.svn.wordpress.org/trunk@34986 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-09 05:19:31 +00:00
Sergey Biryukov
724b83ab0e In do_robots(), allow crawling for admin-ajax.php, since it's often used on front-end.
Props dmchale, joostdevalk.
Fixes #33156.

git-svn-id: https://develop.svn.wordpress.org/trunk@34985 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-09 05:15:01 +00:00
Sergey Biryukov
90f3849d62 Add $id parameter to the_permalink(), for consistency with get_permalink().
Props johnjamesjacoby, chriscct7.
Fixes #23882.

git-svn-id: https://develop.svn.wordpress.org/trunk@34982 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-09 04:33:16 +00:00
Dion Hulse
5700c3e060 Use PHP7's random_int() CSPRNG functionality in wp_rand() with a fallback to the random_compat library for PHP 5.x.
`random_compat` offers a set of compatible functions for older versions of PHP, filling in the gap by using other PHP extensions when available.
We still include our existing `wp_rand()` functionality as a fallback for when no proper CSPRNG exists on the system.

Take Two, this was previously committed in [34922] but had an issue on PHP 5.2 which sarciszewski has now resolved.

Props sarciszewski
See #28633


git-svn-id: https://develop.svn.wordpress.org/trunk@34981 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-09 04:27:41 +00:00
Sergey Biryukov
fb6d5f4aba After [34529], if a compatible termmeta table is found on database upgrade, convert it to utf8mb4 collation.
Props dboulet.
Fixes #34224.

git-svn-id: https://develop.svn.wordpress.org/trunk@34978 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-09 02:06:15 +00:00
Drew Jaynes
654b633cb3 Docs: Add a missing @since version to the hook doc for the the_excerpt_embed filter, introduced in [34903].
See #34227.


git-svn-id: https://develop.svn.wordpress.org/trunk@34975 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 23:24:28 +00:00
Drew Jaynes
85d0dfc45c Embeds: Rename the $return parameter in wp_filter_oembed_result() to $result to provide better context on what is being filtered.
See #32522.


git-svn-id: https://develop.svn.wordpress.org/trunk@34974 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 23:21:49 +00:00
Drew Jaynes
f2444857eb Embeds: Combine the oembed_minwidth and oembed_maxwidth filters into one, similar to how the existing oembed_defaults works for width and height.
See #32522. See #34227.


git-svn-id: https://develop.svn.wordpress.org/trunk@34972 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 23:08:40 +00:00
Drew Jaynes
7c300ef221 Docs: Add missing @since versions for the oembed_minwidth and oembed_maxwidth filters, introduced in [34903].
See #34227.


git-svn-id: https://develop.svn.wordpress.org/trunk@34971 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 22:54:14 +00:00
Drew Jaynes
2585c20b35 Docs: Adjust third-person singular verbs in DocBlock summaries for oEmbed functions introduced in [34903].
See #34227.


git-svn-id: https://develop.svn.wordpress.org/trunk@34970 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 22:49:27 +00:00
Drew Jaynes
c959cb8b9b Embeds: Fix syntax on instantiating a new WP_oEmbed_Controller instance and cross-reference in the DocBlock for wp_oembed_parse_query().
See #34227.


git-svn-id: https://develop.svn.wordpress.org/trunk@34969 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 22:39:52 +00:00
Drew Jaynes
bceea32c67 Docs: Adjust the summary for the oembed_discovery_links hook doc to mention that the filter is for HTML output.
See #34227.


git-svn-id: https://develop.svn.wordpress.org/trunk@34968 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 22:38:10 +00:00
Drew Jaynes
43431fd8b3 Docs: Clarify the file header summary for wp-includes/embed-functions.php, and add missing parameter information for wp_oembed_parse_query(), introduced in [34903].
See #34227.


git-svn-id: https://develop.svn.wordpress.org/trunk@34967 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 22:37:03 +00:00
Drew Jaynes
39ff95f883 Embeds: If we're adding a boatload of new items to default-filters.php, might as well make them readable.
See #32522.


git-svn-id: https://develop.svn.wordpress.org/trunk@34966 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 22:30:51 +00:00
John Blackbourn
bc043c51e8 Introduce the ability to filter the Users admin listing screen by users with no role, if such users exist.
Fixes #22993
Props spmlucas, johnbillion


git-svn-id: https://develop.svn.wordpress.org/trunk@34965 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 22:06:46 +00:00
Drew Jaynes
6fe7598cff Docs: Add a couple of strategically-placed spaces in WP_Rewrite.
Fixes #34218.


git-svn-id: https://develop.svn.wordpress.org/trunk@34964 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 22:06:42 +00:00
Drew Jaynes
e05fb68289 Docs: Mark the optional parameters for WP_Rewrite::generate_rewrite_rules() as such, and improve overall formatting.
Also brings in the list of acceptable constants for the `$ep_mask` parameter.

See #34218.


git-svn-id: https://develop.svn.wordpress.org/trunk@34962 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 21:48:25 +00:00
Jeremy Felt
0b9a437317 Make $blog_id explicitly global.
`$blog_id` is used in both single and multisite configurations as a global variable, though has never been explicitly marked as such in the global scope. This can cause confusion depending on how core is loaded.

Fixes #34217.


git-svn-id: https://develop.svn.wordpress.org/trunk@34961 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 21:44:11 +00:00
Drew Jaynes
61c3b3121f Docs: Convert the description for the optional $args parameter in WP_Rewrite::add_permastruct() into a hash notation.
See #34218.


git-svn-id: https://develop.svn.wordpress.org/trunk@34960 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 21:34:56 +00:00
Boone Gorges
fa1e061dac WP_User_Query role improvement redux.
It's back, and it's better than ever: an overhaul of role-related arguments
in `WP_User_Query`. This updated version of the previously-reverted [34875]
includes support for the use of `$blog_id` without specifying a `$role`, for
a 99.7% reduced chance of breaking wordpress.org and other large sites.

Props boonebgorges, swissspidy.
Fixes #22212.

git-svn-id: https://develop.svn.wordpress.org/trunk@34959 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 21:27:04 +00:00
Drew Jaynes
bf12d6abfb Docs: Improve more formatting and syntax for inline comments in WP_Rewrite.
See #34218.


git-svn-id: https://develop.svn.wordpress.org/trunk@34958 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 21:23:31 +00:00
Drew Jaynes
694a56bc14 Docs: Add saner formatting and make readability improvements to a variety of inline comments in WP_Rewrite and WP_Rewrite::generate_rewrite_rules().
See #34218.


git-svn-id: https://develop.svn.wordpress.org/trunk@34957 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 21:17:14 +00:00
Boone Gorges
3cc827ef5a Store SQL query string as a property on WP_User_Query.
In addition to better parity with other WP query classes, this also allows
testing of SQL strings, should anyone want to do something so foolish.

See #22212.

git-svn-id: https://develop.svn.wordpress.org/trunk@34956 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 21:05:50 +00:00
Sergey Biryukov
b69797e8e8 Docs: Fix typo in [34944].
See #34218.

git-svn-id: https://develop.svn.wordpress.org/trunk@34955 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 20:59:46 +00:00
Scott Taylor
26aeb0f9bc After [34953], unbreak WordPress.
See [34930], #33982.


git-svn-id: https://develop.svn.wordpress.org/trunk@34954 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 19:28:14 +00:00
Scott Taylor
7a6f53d917 HTTP/REST API: move WP_HTTP_Response to wp-includes/ with the rest (ha!) of the HTTP classes. This is PHP 5.2, so this class is global, and as per @rmccue, unrelated to REST specifically.
See [34930], #33982.


git-svn-id: https://develop.svn.wordpress.org/trunk@34953 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 19:26:44 +00:00
Konstantin Obenland
7e923cc0fe Template: Add fallback for empty containers.
Since [14031] the container can be omitted in `wp_nav_menu()`. It can not
however in `wp_page_menu()`, which creates a conflict if it is set as
the fallback, Let's make sure there is always a valid container tag.

Fixes #33974.



git-svn-id: https://develop.svn.wordpress.org/trunk@34950 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 18:26:13 +00:00
Sergey Biryukov
ab296be565 REST API: Add some missing documentation.
Props swissspidy.
Fixes #34215.

git-svn-id: https://develop.svn.wordpress.org/trunk@34949 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 18:00:45 +00:00
Helen Hou-Sandi
df1b726ed0 Buttons: Update styles and colors.
* Aligns with the color standards. See https://make.wordpress.org/design/handbook/foundations/colors/
* Creates a consistent interaction experience between states.
* Improves contrast and accessibility.

props hugobaeta, afercia, melchoyce, michael-arestad.
fixes #31459.


git-svn-id: https://develop.svn.wordpress.org/trunk@34948 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 17:30:57 +00:00
Boone Gorges
a1389117b2 Allow a null id to do a name lookup in wp_set_current_user().
Previously, the `name` fallback was failing in the case where the current user
was 0, due to a loose comparison between 0 (the current user) and `null` (the
value that is used to trigger the `name` fallback).

Props bobbingwide.
Fixes #20845.

git-svn-id: https://develop.svn.wordpress.org/trunk@34947 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 17:28:34 +00:00
John Blackbourn
17e2841eea Improve the parameter names and inline documentation for add_rewrite_rule(), WP_Rewrite::add_rule(), and WP_Rewrite::add_external_rule().
Fixes #34197


git-svn-id: https://develop.svn.wordpress.org/trunk@34946 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 17:27:05 +00:00
Drew Jaynes
4dc569f748 Docs: Fix third-person singular verbs in DocBlock summaries throughout WP_Rewrite.
See #34218.


git-svn-id: https://develop.svn.wordpress.org/trunk@34944 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 17:11:52 +00:00
Sergey Biryukov
017e097daf Add wp_load_translations_early() to wpdb::check_connection().
Fixes #29306. See #34216.

git-svn-id: https://develop.svn.wordpress.org/trunk@34943 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 17:10:58 +00:00
Sergey Biryukov
9a80bffdb3 Split database error messages into separate strings to remove unnecessary HTML tags from translations.
Add translator comments for placeholders.

Fixes #34216.

git-svn-id: https://develop.svn.wordpress.org/trunk@34942 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 16:51:50 +00:00
Drew Jaynes
ee6b1ae7c8 Docs: Relocate some more DocBlock-level @see tags and add some missing @access tags in WP_Rewrite.
See #34218.


git-svn-id: https://develop.svn.wordpress.org/trunk@34941 602fd350-edb4-49c9-b593-d223f7449a82
2015-10-08 16:50:52 +00:00