Commit Graph

43856 Commits

Author SHA1 Message Date
Sergey Biryukov bc175dca8c Editor: Some documentation and test improvements for loading separate assets for core blocks:
* Move `should_load_separate_core_block_assets()` to a more appropriate place.
* Update DocBlocks and inline comments per the documentation standards.
* Document the `$wp_styles` global in `wp_maybe_inline_styles()`.
* List the expected result first in unit test assertions.
* Remove a duplicate unit test.
* Add missing `@covers` tags.

Follow-up to [50836], [50837].

See #50328, #52620, #53180.
Built from https://develop.svn.wordpress.org/trunk@50838


git-svn-id: http://core.svn.wordpress.org/trunk@50447 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-11 16:28:02 +00:00
gziolo 7f804f8436 Editor: Fix regression introduced with loading separate block assets
Related to [50836]. load-styles.php doesn't load the should_load_separate_core_block_assets function and that causes an error 500 - which in turn makes the dashboard appear unstyled.

Props aristath.
Fixes #53180.



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


git-svn-id: http://core.svn.wordpress.org/trunk@50446 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-11 14:16:01 +00:00
gziolo 8df663cbfa Editor: Enqueue script and style assets only for blocks present on the page
Adds styles for individual core blocks to make it possible to render only styles for those blocks that are rendered on the page (frontend). This is optinal functionality for start that can be controlled with the new `separate_core_block_assets` filter.

In addition to that, styles can be inlined when `path` is passed when registering an individual styles. This functionality can be changed with the new `styles_inline_size_limit` filter. The maximum size of inlined styles in bytes defaults to 20 000.

Props aristath, aduth, westonruter, mcsf.
Fixes #50328, #52620.


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


git-svn-id: http://core.svn.wordpress.org/trunk@50445 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-11 09:43:08 +00:00
desrosj 9ec439903d Posts, Post Types: Enable revisions for the `wp_block` post type.
This allows site owners to take advantage of revisions while broader improvements to block management and reusable blocks are explored.

Props matveb, audrasjb, desrosj.
Fixes #53072.
Built from https://develop.svn.wordpress.org/trunk@50835


git-svn-id: http://core.svn.wordpress.org/trunk@50444 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-10 18:38:59 +00:00
desrosj 41de9e3fd3 Network and Sites: Display site icons in the My Sites menu.
This updates the My Sites dropdown menu on multisite installs to display the site icon for each site. When a site icon is not selected, the default WordPress logo will continue showing.

Props rmccue, joemcgill, afercia, audrasjb, desrosj.
Fixes 46657.
Built from https://develop.svn.wordpress.org/trunk@50834


git-svn-id: http://core.svn.wordpress.org/trunk@50443 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-10 18:24:01 +00:00
Sergey Biryukov c8e4bb5d70 Site Health: Improve the appearance of Site Health Status dashboard widget.
This better utilizes the available screen space on wider screens.

Props mblach, hedgefield, Clorith.
Fixes #52966.
Built from https://develop.svn.wordpress.org/trunk@50833


git-svn-id: http://core.svn.wordpress.org/trunk@50442 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-10 14:56:00 +00:00
Sergey Biryukov 0a8cfcd0d7 Coding Standards: Use strict comparison in `wp-admin/includes/screen.php`.
See #52627.
Built from https://develop.svn.wordpress.org/trunk@50832


git-svn-id: http://core.svn.wordpress.org/trunk@50441 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-09 20:27:02 +00:00
Sergey Biryukov f30138fd8a Docs: Correct `@since` tags for new properties and functions related to infinite scrolling in Media Library.
Follow-up to [50829].

See #50105, #40330, #52628.
Built from https://develop.svn.wordpress.org/trunk@50831


git-svn-id: http://core.svn.wordpress.org/trunk@50440 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-08 11:22:03 +00:00
joedolson 34e71f3d94 Permalinks: Add labels for permalink configuration fields.
If the current server configuration doesn't allow WordPress to edit permalink settings, the textarea with new rules to use was not labeled. Add labels and aria-describedby pointing to the field description.
 
Props sabernhardt
Fixes #53142.
Built from https://develop.svn.wordpress.org/trunk@50830


git-svn-id: http://core.svn.wordpress.org/trunk@50439 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-07 23:51:04 +00:00
joedolson 9b6710c43c Media: Remove infinite scroll from media library and modal.
Replace infinitely autoloading behavior on scroll with a user-controlled load more button. Fix a long standing accessibility issue in the media library. Infinite scroll poses a wide range of problems for accessibility, usability, and performance.

This change modifies the library to load 40 items in the initial view, with a load more button to load the next 40 items and a button to move focus from the load more region to the first of the most recently added items.

The text for communicating the jump target was broadly discussed, agreeing that the text incorporated here would most concisely and clearly convey the purpose of the button, and any further detail is learnable from use.
 
Props afercia, adamsilverstein, joedolson, audrasjb, francina 
Fixes #50105. See #40330. 
Built from https://develop.svn.wordpress.org/trunk@50829


git-svn-id: http://core.svn.wordpress.org/trunk@50438 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-07 23:19:03 +00:00
John Blackbourn bdaca9bffc Docs: Miscellaneous docblock updates.
See #52628

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


git-svn-id: http://core.svn.wordpress.org/trunk@50437 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-07 20:16:00 +00:00
desrosj 03dc655612 Docs: Use correct `@since` tag notation.
This corrects the version number specified by the `@since` tag for the `delete_theme` and `deleted_theme` action hooks introduced in [50826] to contain a full, 3 digit version.

Props ocean90.
See #16401.
Built from https://develop.svn.wordpress.org/trunk@50827


git-svn-id: http://core.svn.wordpress.org/trunk@50436 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-07 18:26:02 +00:00
desrosj 102d9569c2 Themes: Introduce the `delete_theme` and `deleted_theme` action hooks.
This change introduces the `delete_theme` and `deleted_theme` action hooks, which fire immediately before and after an attempt to delete a theme, respectively.

Props scottconnerly, ptahdunbar, pbiron, vetyst, desrosj.
Fixes #16401.
Built from https://develop.svn.wordpress.org/trunk@50826


git-svn-id: http://core.svn.wordpress.org/trunk@50435 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-07 16:09:59 +00:00
Sergey Biryukov 0082070074 Plugins: Escape the currently installed version number on Add Plugins screen.
The number is displayed in the plugin details modal if a newer version is already installed.

Props m0ze, bmcculley, ayeshrajans.
Fixes #53020.
Built from https://develop.svn.wordpress.org/trunk@50825


git-svn-id: http://core.svn.wordpress.org/trunk@50434 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-07 13:49:58 +00:00
gziolo b8871304cf Editor: Update WordPress packages from Gutenberg 10.5
Applies changes between the Gutenberg plugin v10.4 and v10.5. It contains the latest version of WordPress packages and PHP changes applied to non-experimental features.

Props youknowriad.
See #52991.


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


git-svn-id: http://core.svn.wordpress.org/trunk@50433 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-07 11:48:27 +00:00
Sergey Biryukov 8cfc803e28 Docs: Correct the `aria-current` array key in the documentation for two widget filters.
This applies to `nav_menu_link_attributes` and `page_menu_link_attributes` filters.

Follow-up to [42808], [44416].

Props jnylen0, chetan200891, alexstine.
See #43522, #52628.
Built from https://develop.svn.wordpress.org/trunk@50823


git-svn-id: http://core.svn.wordpress.org/trunk@50432 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-07 09:46:58 +00:00
Sergey Biryukov 5354201954 Media: Avoid an infinite loop between `wp_getimagesize()` and `wp_get_image_mime()`.
As a result of the recent changes, both functions were calling each other if the `exif` PHP extension is not available.

The issue is now resolved by calling the `getimagesize()` PHP function directly, instead of the `wp_getimagesize()` wrapper.

Follow-up to [50146], [50810], [50814], [50815], [50818-50821].

See #35725.
Built from https://develop.svn.wordpress.org/trunk@50822


git-svn-id: http://core.svn.wordpress.org/trunk@50431 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-07 09:33:01 +00:00
Sergey Biryukov c6028577a4 Media: Remove an extra variable and a redundant check in `WP_Image_Editor_Imagick::set_quality()`.
`wp_get_webp_info()` returns either a string or `false` for the `type` key, so we can just check for the string directly.

Follow-up to [50810], [50814], [50815], [50818-50820].

See #35725.
Built from https://develop.svn.wordpress.org/trunk@50821


git-svn-id: http://core.svn.wordpress.org/trunk@50430 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-06 15:04:57 +00:00
Sergey Biryukov bff31c970e Docs: Correct documentation for `wp_get_webp_info()` return results.
Follow-up to [50810], [50814], [50815], [50818], [50819].

See #35725.
Built from https://develop.svn.wordpress.org/trunk@50820


git-svn-id: http://core.svn.wordpress.org/trunk@50429 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-06 13:58:57 +00:00
Sergey Biryukov 7b2335eb40 Media: Remove `_wp_webp_is_lossy()` for now.
The function was only used in a single place in core.

Follow-up to [50810], [50814], [50815], [50818].

Props johnjamesjacoby.
See #35725.
Built from https://develop.svn.wordpress.org/trunk@50819


git-svn-id: http://core.svn.wordpress.org/trunk@50428 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-06 11:10:57 +00:00
Sergey Biryukov 8b18915601 Media: Correct an early return condition in `wp_get_webp_info()`.
Previously, this would only have evaluated to `true` if `wp_get_image_mime()` returned `false`.

Follow-up to [50810], [50814], [50815].

See #35725.
Built from https://develop.svn.wordpress.org/trunk@50818


git-svn-id: http://core.svn.wordpress.org/trunk@50427 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-06 10:21:01 +00:00
desrosj af4b043a69 Site Health: Include more ImageMagick/Imagick information in the Media Handling section.
This adds additional information to the Media Handling section of the Site Health Info page. When ImageMagick is used as the site’s image editor, a full list of file formats supported will now be shown. This will help site owners debug any issues they encounter as support for newer, more modern image formats is added (such as WebP in [50810]).

Additionally, the version of Imagick installed. This will help site owners debug issues with generating images on the PHP side.

Some variables have also been renamed to more accurately represent what is being stored.

Props Clorith, desrosj.
Fixes #53022.
Built from https://develop.svn.wordpress.org/trunk@50817


git-svn-id: http://core.svn.wordpress.org/trunk@50426 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-05 19:21:59 +00:00
davidbaumwald f415fa5ea2 Comments: Remove fourth parameter on `remove_filter` call.
In `class-walker-comment.php`, a `remove_filter` call on `comment_text` passed a fourth parameter which was not needed.  This change removes the extra argument.

Props diddledan, SergeyBiryukov.
Fixes #53113.
Built from https://develop.svn.wordpress.org/trunk@50816


git-svn-id: http://core.svn.wordpress.org/trunk@50425 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-05 18:54:57 +00:00
Sergey Biryukov 16c42e467d Media: Move retrieving WebP image size information into `wp_getimagesize()`.
Remove `_wp_get_image_size()`.

Follow-up to [50146], [50810], [50814].

Props johnjamesjacoby.
See #35725.
Built from https://develop.svn.wordpress.org/trunk@50815


git-svn-id: http://core.svn.wordpress.org/trunk@50424 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-05 18:47:57 +00:00
Sergey Biryukov 0778849c12 Media: Some documentation and test improvements for WebP support:
* Document that WebP constants are only defined in PHP 7.1+.
* Correct the `$filename` parameter type in `wp_get_webp_info()`.
* Use a consistent message when skipping tests due to the lack of WebP support.
* Remove unnecessary `else` branches after `markTestSkipped()`.
* Replace `assertEquals()` with more appropriate assertions.

Follow-up to [50810].

See #35725.
Built from https://develop.svn.wordpress.org/trunk@50814


git-svn-id: http://core.svn.wordpress.org/trunk@50423 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-05 17:08:01 +00:00
Sergey Biryukov e21dfba663 Themes: Remove the "Featured" tab on Add Themes screen.
Themes displayed in this tab were actually random, and have not been selected to be featured to new WordPress users.

The tab had already been removed from the Theme Directory, and with this change, the options in the admin area and in the directory will match again.

The "Popular" tab is now displayed instead as the default view.

Props poena, kjellr, celloexpressions.
Fixes #49487. See #meta5044.
Built from https://develop.svn.wordpress.org/trunk@50813


git-svn-id: http://core.svn.wordpress.org/trunk@50422 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-05 15:54:59 +00:00
desrosj 960952fd9b Formatting: Verify emails with `+` characters are valid.
This adds an assertion to confirm that `is_email()` considers email addresses with a `+` valid.

Props SergeyBiryukov, ayeshrajans.
Fixes #53130.
Built from https://develop.svn.wordpress.org/trunk@50812


git-svn-id: http://core.svn.wordpress.org/trunk@50421 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-04 16:06:59 +00:00
Sergey Biryukov adae6bc86d Docs: Further synchronize documentation for some Plugin API functions.
Follow-up to [50807].

See #50531.
Built from https://develop.svn.wordpress.org/trunk@50811


git-svn-id: http://core.svn.wordpress.org/trunk@50420 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-04 15:01:58 +00:00
Adam Silverstein 524030edfa Images: enable WebP support.
Add support for uploading, editing and saving WebP images when supported by the server.

Add 'image/webp' to supported mime types. Correctly identify WebP images and sizes even when PHP doesn't support WebP. Resize uploaded WebP files (when supported) and use for front end markup.

Props markoheijne, blobfolio, Clorith, joemcgill, atjn, desrosj, spacedmonkey, marylauc, mikeschroder, hellofromtonya, flixos90.
Fixes #35725.


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


git-svn-id: http://core.svn.wordpress.org/trunk@50419 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-04 14:44:58 +00:00
desrosj e7e4b84263 General: Use correct escaping function for form `action` attributes.
Props chintan1896, audrasjb.
Fixes #53150.
Built from https://develop.svn.wordpress.org/trunk@50809


git-svn-id: http://core.svn.wordpress.org/trunk@50418 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-04 13:47:58 +00:00
desrosj 5ced9a5afe General: Use correct escaping function for the plugin icon URL.
Props chintan1896, audrasjb.
Fixes #53151.
Built from https://develop.svn.wordpress.org/trunk@50808


git-svn-id: http://core.svn.wordpress.org/trunk@50417 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-04 13:38:58 +00:00
Sergey Biryukov ef28363c7b Plugins: Standardize the terminology used for actions, filters, and callback functions.
Use `$hook_name` when referring to a filter or action hook name, and `$callback` when referring to a callback function.

This brings more consistency to parameter names in Plugin API functions.

Includes minor code layout fixes for better readability and reordering some functions in a more logical order.

Props johnbillion, jrf, SergeyBiryukov.
Fixes #50531.
Built from https://develop.svn.wordpress.org/trunk@50807


git-svn-id: http://core.svn.wordpress.org/trunk@50416 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-04 10:48:03 +00:00
Sergey Biryukov 6f2fa9ef42 Twenty Twenty-One: Fix "Opening PHP tag must be on a line by itself" WPCS issue.
Follow-up to [50802].

See #52938.
Built from https://develop.svn.wordpress.org/trunk@50806


git-svn-id: http://core.svn.wordpress.org/trunk@50415 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-03 14:35:02 +00:00
Sergey Biryukov 8641429845 Coding Standards: Fix a whitespace at end of line issue in `wp-admin/includes/class-wp-comments-list-table.php`.
Includes minor code layout fixes for better readability.

See #52627.
Built from https://develop.svn.wordpress.org/trunk@50805


git-svn-id: http://core.svn.wordpress.org/trunk@50414 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-03 14:10:00 +00:00
Sergey Biryukov 4f2c63bbf6 Coding Standards: Use strict comparison in `wp-admin/includes/class-wp-posts-list-table.php`.
Includes minor code layout fixes for better readability.

See #52627.
Built from https://develop.svn.wordpress.org/trunk@50804


git-svn-id: http://core.svn.wordpress.org/trunk@50413 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-03 13:57:04 +00:00
Sergey Biryukov 29cd5d902d Upgrade/Install: Display plugin and theme update counts on WordPress Updates screen.
This restores the information that was previously included in a title attribute tooltip on pending updates link in the toolbar.

Follow-up to [50801].

Props sabernhardt, audrasjb, mukesh27, davidbaumwald.
Fixes #53031.
Built from https://develop.svn.wordpress.org/trunk@50803


git-svn-id: http://core.svn.wordpress.org/trunk@50412 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-02 16:54:06 +00:00
Sergey Biryukov 85d526c5d0 Twenty Twenty-One: Display page title as the H1 heading when a static page is selected as the "Posts page".
This ensures that the heading represents the content of the page. Previously, the site title was displayed instead.

Props sabernhardt, justinahinon, rianrietveld, mukesh27, francina, audrasjb, Boniu91.
Fixes #52938.
Built from https://develop.svn.wordpress.org/trunk@50802


git-svn-id: http://core.svn.wordpress.org/trunk@50411 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-05-01 18:14:05 +00:00
joedolson 6c9dfaede8 Toolbar: Remove title attribute on pending updates link.
Remove the title attribute from the link, wrap the link icon and numeric indicator with the `aria-hidden` attribute, and add a `.screen-reader-text` span so screen readers hear a link that has relevant context without requiring translators to deal with appended strings. Removes the individual counts of theme and plugin updates from the attribute, as those were already buggy and didn't include translation counts.

Props afercia, Mte90, sabernhardt, audrasjb
Fixes #26562. See #53031.
Built from https://develop.svn.wordpress.org/trunk@50801


git-svn-id: http://core.svn.wordpress.org/trunk@50410 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-04-30 22:55:06 +00:00
Sergey Biryukov 267061c959 External Libraries: Upgrade PHPMailer to version 6.4.1.
Release notes: https://github.com/PHPMailer/PHPMailer/releases/tag/v6.4.1

For a full list of changes in this update, see the PHPMailer GitHub:
https://github.com/PHPMailer/PHPMailer/compare/v6.4.0...v6.4.1

Props ayeshrajans.
Fixes #53114.
Built from https://develop.svn.wordpress.org/trunk@50799


git-svn-id: http://core.svn.wordpress.org/trunk@50408 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-04-29 20:30:06 +00:00
gziolo f6f8094b1d Editor: Fix typo in image default size setting
Related change in Gutneberg: https://github.com/WordPress/gutenberg/pull/31324

Props mamaduka.
See #52920.


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


git-svn-id: http://core.svn.wordpress.org/trunk@50407 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-04-29 10:12:05 +00:00
davidbaumwald 589e89231a Coding Standards: Update `$out` in `WP_Widget_Pages` with a more meaningful name.
Rename an `$out` variable to `$output` for consistency with other widget classes..

Props mukesh27.
Fixes #53059.
Built from https://develop.svn.wordpress.org/trunk@50797


git-svn-id: http://core.svn.wordpress.org/trunk@50406 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-04-28 20:55:03 +00:00
desrosj 4a73e53df4 Build/Test Tools: Correctly test `grunt clean` when built to run from `src`.
Because the `--` separator was missing, the `--dev` flag was not being passed to the script, thus not testing properly.

See #52625.
Built from https://develop.svn.wordpress.org/trunk@50796


git-svn-id: http://core.svn.wordpress.org/trunk@50405 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-04-28 19:07:06 +00:00
Sergey Biryukov 754714ba43 Coding Standards: Fix a precision alignment issue in `wp-admin/includes/template.php`.
Follow-up to [49223].

See #52627.
Built from https://develop.svn.wordpress.org/trunk@50795


git-svn-id: http://core.svn.wordpress.org/trunk@50404 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-04-28 18:55:05 +00:00
youknowriad 4f7ace4f9c Block Editor: Update the bundled block patterns.
This updates the block patterns included by default on WordPress
to give them more personality and to make use of the design tools
that has been added to the editor.

Props onemaggie, melchoyce, kjellr, beafialho, gziolo.
Fixes #52846.

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


git-svn-id: http://core.svn.wordpress.org/trunk@50403 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-04-28 10:38:05 +00:00
Sergey Biryukov 8cd601c8ba REST API: Check the results of `get_metadata()` in `WP_REST_Meta_Fields` methods.
This avoids PHP warnings in case the function returns boolean `false` instead of an array.

Props david.binda.
Fixes #53099.
Built from https://develop.svn.wordpress.org/trunk@50793


git-svn-id: http://core.svn.wordpress.org/trunk@50402 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-04-27 18:36:04 +00:00
Sergey Biryukov cbfa060298 Docs: Document the usage of `$current_user` global in `get_user_by()`.
Follow-up to [50790].

Props paaggeli, mukesh27.
Fixes #53088.
Built from https://develop.svn.wordpress.org/trunk@50792


git-svn-id: http://core.svn.wordpress.org/trunk@50401 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-04-27 17:49:06 +00:00
Sergey Biryukov b2117d7299 Posts, Post Types: Pass the post object to `the_password_form` filter.
Props silb3r.
Fixes #29008.
Built from https://develop.svn.wordpress.org/trunk@50791


git-svn-id: http://core.svn.wordpress.org/trunk@50400 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-04-26 15:38:05 +00:00
Peter Wilson de519f9dfe Users: Share current user instance across functions.
Share the `WP_User` instance for the current user between the functions `get_userdata()` and `wp_get_current_user()`. Both functions return the `$current_user` global for the current user.

Force refresh the `$current_user` global within `clean_user_cache()` by immediately re-calling `wp_set_current_user()` with the current user's ID. This ensures any changes to the current user's permissions or other settings are reflected in the global. As a side-effect this immediately rewarms the current user's cache.

Props chaion07, chriscct7, donmhico, hellofromtonya, lukecarbis, peterwilsoncc, rmccue, TimothyBlynJacobs.
Fixes #28020.

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


git-svn-id: http://core.svn.wordpress.org/trunk@50399 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-04-26 01:03:59 +00:00
Peter Wilson 868ad5a313 Build/Tests tools: Improve `get_bookmark()` test coverage.
Props hellofromtonya, peterwilsoncc.
See #52988.

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


git-svn-id: http://core.svn.wordpress.org/trunk@50398 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-04-26 01:00:05 +00:00
Sergey Biryukov 1ad7538792 Plugins: When loading a plugin in a "sandbox" on activation, do it once.
This avoids a fatal error if the plugin is already included, e.g. in unit tests.

Follow-up to [50787].

See #31104.
Built from https://develop.svn.wordpress.org/trunk@50788


git-svn-id: http://core.svn.wordpress.org/trunk@50397 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2021-04-25 13:21:05 +00:00