Commit Graph

17856 Commits

Author SHA1 Message Date
Jonathan Desrosiers
197067c477 Twenty Twenty: Use jshint exclude statements instead of eslint.
Also, exclude the `node_modules` folder within `twentytwentyone`.

See #51526.

git-svn-id: https://develop.svn.wordpress.org/trunk@49250 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 18:32:03 +00:00
Sergey Biryukov
ad2830f903 Coding Standards: Fix WPCS issues in [49242].
See #50774.

git-svn-id: https://develop.svn.wordpress.org/trunk@49249 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 18:29:26 +00:00
Adam Silverstein
b07e0b2cfa Users: improve password generation feature.
On the user edit screen improve handling and clarify language: rename the "Generate Password" and "Show password" buttons to "Set New Password". Clicking it always generates a password. Also: improve inline code comments and descriptions.

Props afercia, bookdude13, michaelarestad, pento.
Fixes #42852.



git-svn-id: https://develop.svn.wordpress.org/trunk@49248 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 18:24:40 +00:00
Jonathan Desrosiers
6537dacf41 Twenty Twenty: Import the latest changes from GitHub
For a full list of changes since [49216], see dfe141276c...trunk/.

Props poena, melchoyce, luminuu, aristath, jffng, ryelle, kishanjasani, rolfsiebers, sresok, desrosj.
See #51526.

git-svn-id: https://develop.svn.wordpress.org/trunk@49247 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 18:24:33 +00:00
Timothy Jacobs
54aa0bc7d1 REST API: Add support for the oneOf and anyOf keywords.
This allows for REST API routes to define more complex validation requirements as JSON Schema instead of procedural validation.

The error code returned from `rest_validate_value_from_schema` for invalid parameter types has been changed from the generic `rest_invalid_param` to the more specific `rest_invalid_type`.

Props yakimun, johnbillion, TimothyBlynJacobs.
Fixes #51025.


git-svn-id: https://develop.svn.wordpress.org/trunk@49246 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 18:22:39 +00:00
Sergey Biryukov
194d32b970 Upgrade/Install: Allow WordPress sites to opt-in to beta & RC releases.
The `WP_AUTO_UPDATE_CORE` constant now supports `beta` and `rc` values.

This makes it possible for sites to opt-in to updating to RC (or beta) releases without having to install a plugin, or run on a development version.

Props dd32, knutsp.
Fixes #51319.

git-svn-id: https://develop.svn.wordpress.org/trunk@49245 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 17:54:50 +00:00
Sergey Biryukov
6e5edfe6cf Upgrade/Install: Restore casting $filter_payload to an object in WP_MS_Themes_List_Table::prepare_items().
Follow-up to [48750], [49241].

See #50875.

git-svn-id: https://develop.svn.wordpress.org/trunk@49243 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 17:42:36 +00:00
Helen Hou-Sandi
bf35285a39 Upgrade/Install: Include "from" version for plugins/themes in email.
This can help with chasing down any issues that may arise and rolling back if necessary. We hope it's not, but it might be.

Props dkotter, garrett-eclipse, pbiron, audrasjb.
Fixes #50774.


git-svn-id: https://develop.svn.wordpress.org/trunk@49242 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 17:38:59 +00:00
Sergey Biryukov
6b5b87db58 Upgrade/Install: Introduce a wrapper for the auto_update_{$type} filter checks.
This allows for cleaner checks whether auto-updates are forced for a plugin or theme.

Follow-up to [48750].

Props rebasaurus, garrett-eclipse, SergeyBiryukov.
Fixes #50875.

git-svn-id: https://develop.svn.wordpress.org/trunk@49241 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 17:37:16 +00:00
Jonathan Desrosiers
310d8eb83d Twenty Thirteen: Prevent incorrect link color within the Social Icon block.
Props amolv, shital-patel, poena, davidbaumwald.
Fixes #50809.

git-svn-id: https://develop.svn.wordpress.org/trunk@49240 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 17:33:46 +00:00
Jonathan Desrosiers
2cd6aef680 Emoji: Update Twemoji to version 13.0.1.
This release fixes minor issues with 8 different Emoji and revises the person/woman/man kneeling Emoji to be in a more obvious kneeling position.

🧎

These updates were pushed to a new, `13.0.1` folder on the CDN in [dotorg:16573].

For a full list of changes in this update, see https://github.com/twitter/twemoji/compare/v13.0.0...v13.0.1.

Props hareesh-pillai, otto42, desrosj.
Fixes #51356.

git-svn-id: https://develop.svn.wordpress.org/trunk@49239 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 16:53:43 +00:00
Sergey Biryukov
af6ecf2d16 Quick/Bulk Edit: Introduce quick_edit_dropdown_authors_args filter.
This allows for customizing the arguments used to generate the Quick Edit authors drop-down.

Additionally, pass the `$bulk` argument to the `quick_edit_dropdown_pages_args` filter, for consistency.

Props Mista-Flo, garrett-eclipse, hellofromTonya.
Fixes #47685.

git-svn-id: https://develop.svn.wordpress.org/trunk@49238 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 16:38:32 +00:00
Sergey Biryukov
980a387347 Site Health: Introduce the WP_Site_Health::is_development_environment() method.
This allows Site Health tests to check if the current environment type is set to `development` or `local`.

Use the new method:
* In HTTPS tests, instead of a hardcoded check for `localhost`.
* In `WP_DEBUG` and `WP_DEBUG_DISPLAY` tests, to set the status to `recommended` instead of `critical`.

Props dkotter, Clorith, DavidAnderson, joyously, knutsp, afragen, SergeyBiryukov.
Fixes #47058.

git-svn-id: https://develop.svn.wordpress.org/trunk@49237 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 16:21:12 +00:00
Dominik Schilling
9e83d04f84 I18N: Introduce WP_Textdomain_Registry to store text domains and their language directory paths.
Previously, when using `switch_to_locale()` all current loaded text domains were unloaded and added to the `$l10n_unloaded` global. This prevented the just-in-time loading for text domains after a switch. The just-in-time loading was also only possible if the translations were stored in `WP_LANG_DIR`. Both issues have been fixed.

* Adds `WP_Textdomain_Registry` to keep track of the language directory paths for all plugins and themes.
* Updates all `load_*_textdomain()`  functions to store the path in `WP_Textdomain_Registry`.
* Adds `$reloadable` parameter to `unload_textdomain()` to define whether a text domain can be loaded just-in-time again. This is used by `WP_Locale_Switcher::load_translations()`.
* Extends `_load_textdomain_just_in_time()` to also support text domains of plugins and themes with custom language directories.
* Fixes the incorrect `test_plugin_translation_after_switching_locale_twice()` test which should have catch this issue earlier.
* Adds a new test plugin/theme to test the loading of translations with a custom language directory.
* Deprecates the now unused and private `_get_path_to_translation()` and `_get_path_to_translation_from_lang_dir()` functions.

Props yoavf, swissspidy, dd32, ocean90.
See #26511.
Fixes #39210.

git-svn-id: https://develop.svn.wordpress.org/trunk@49236 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 16:03:58 +00:00
Sergey Biryukov
e3f28a9a11 General: Add $options parameter to JSON response functions:
* `wp_send_json()`
* `wp_send_json_success()`
* `wp_send_json_error()`

This allows for customizing the options passed to `json_encode()`.

Props eroraghav, hareesh-pillai, garrett-eclipse.
Fixes #51293.

git-svn-id: https://develop.svn.wordpress.org/trunk@49235 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 15:54:43 +00:00
Sergey Biryukov
2defb1ef6c Media: Introduce a filter for wp_get_attachment_image() HTML output.
Props prionkor, antpb, donmhico, audrasjb, Mista-Flo, hellofromTonya.
Fixes #50801.

git-svn-id: https://develop.svn.wordpress.org/trunk@49234 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 15:29:42 +00:00
Sergey Biryukov
a0be3a4ca7 Docs: Use 3-digit, x.x.x style semantic versioning for @since 5.6.0 entries in WP_Image_Editor_Imagick.
See #50768.

git-svn-id: https://develop.svn.wordpress.org/trunk@49233 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 14:52:15 +00:00
Jonathan Desrosiers
9f90177b3f Site Health: Improve the reliability of asynchronous tests.
This change adds additional logic to catch HTTP failures that do not return a `WP_Error` object (for example, a wp-json REST API error error).

This also fixes instances where REST API callbacks performed from cron do not work due to a lack of authentication by introducing a direct callback route that asynchronous tests can register.

Props dd32, clorith, timothyblynjacobs.
Fixes #51547.

git-svn-id: https://develop.svn.wordpress.org/trunk@49232 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 14:48:50 +00:00
Sergey Biryukov
62e7a97518 Docs: Update the @since note for _media_states().
Follow-up to [49223].

Props mukesh27.
Fixes #42063.

git-svn-id: https://develop.svn.wordpress.org/trunk@49231 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 14:39:49 +00:00
Mike Schroder
7021f5f4b5 Media: Support Stream Wrappers In WP_Image_Editor_Imagick
Since `WP_Image_Editor`'s introduction, stream wrappers have functioned in `WP_Image_Editor_GD`, but haven't been properly supported in `WP_Image_Editor_Imagick`.

- Detects stream wrappers and uses `file_put_contents()` along with `Imagick::read/getImageBlob()` for handling when necessary.
- Introduces private method, `WP_Image_Editor_Imagick::write_image` to handle detection and proper saving.
- Introduces `WP_Test_Stream` class for testing stream wrappers, along with new tests for Imagick's stream handling and a stream filename test.

Adds requirement for `Imagick::readImageBlob()`, available in Imagick >= 2.0.0, which aligns with the current requirement of Imagick >= 2.2.0.

Props p00ya, calin, joemcgill, pputzer, jimyaghi, mikeschroder.
Fixes #42663.

git-svn-id: https://develop.svn.wordpress.org/trunk@49230 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 14:35:10 +00:00
Jonathan Desrosiers
fc378e2fe5 Site Health: Use consistent padding around header tags.
Props vinita29, clorith.
Fixes #50638.

git-svn-id: https://develop.svn.wordpress.org/trunk@49229 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 14:16:27 +00:00
Riad Benguella
9fc20595b6 Block Editor: Update the WordPress Packages to the latest version.
This includes the packages that match the Gutenberg 9.2 Release.
It is going to be the last block-editor features update for WordPress 5.6.
It also updates the block-supports code base to the latest APIs.

Props isabel_brison, noisysocks, desrosj.
Fixes #51570.


git-svn-id: https://develop.svn.wordpress.org/trunk@49226 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 13:33:02 +00:00
Jonathan Desrosiers
a8d80fd4a7 Coding Standards: Correct some minor coding standards issues.
Introduced in [49154], [49212], [49223], and [49224].

git-svn-id: https://develop.svn.wordpress.org/trunk@49225 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 13:27:48 +00:00
Riad Benguella
123a965c70 Block Editor: Expose api_version in the block type and the REST endpoint.
The new block editor included in 5.6 introduces an api_version property
that indicates which block API version the block is using. 
This commits makes this property available on the block type and the endpoint.

Props TimothyBlynJacobs, gziolo.
Fixes #51529.



git-svn-id: https://develop.svn.wordpress.org/trunk@49224 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 07:52:06 +00:00
Helen Hou-Sandi
af767035e7 Media: Indicate if item is or was used as a site option in the details modal.
Props Mista-Flo, melchoyce.
Fixes #42063.


git-svn-id: https://develop.svn.wordpress.org/trunk@49223 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 03:12:07 +00:00
Anthony Burchell
b95d64f62a Media: Allow hiding of ‘View attachment page’ link in media modal.
If an empty string is supplied to the `attachment_link` filter the ‘View attachment page’ link will be hidden in the media modal.
Props limera1n, garrett-eclipse, joemcgill, Mista-Flo, hellofromTonya.
Fixes #48325.


git-svn-id: https://develop.svn.wordpress.org/trunk@49222 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 02:27:39 +00:00
Sergey Biryukov
16468a23ac Sitemaps: Center the container for sitemap content.
Props ramiy, swissspidy.
Fixes #50658.

git-svn-id: https://develop.svn.wordpress.org/trunk@49221 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 02:20:31 +00:00
Jonathan Desrosiers
029dd1bbb9 Bundled Themes: Make Twenty Twenty-One the default theme.
After being imported in [49216], Twenty Twenty-One can now be set as the default theme in WordPress.

See #48110.

git-svn-id: https://develop.svn.wordpress.org/trunk@49220 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 02:02:37 +00:00
Sergey Biryukov
9943059356 Help/About: Serve the image on the Freedoms page locally.
Serving the files locally is beneficial for reasons of privacy and speed.

Props garrett-eclipse, pputzer, hellofromTonya.
Fixes #46363.

git-svn-id: https://develop.svn.wordpress.org/trunk@49219 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 02:00:46 +00:00
Sergey Biryukov
c7b8b7b974 Help/About: Update Privacy page to include illustration.
This brings some consistency with the Freedoms page.

Follow-up to [43938].

Props melchoyce, garrett-eclipse, hareesh-pillai, ryelle.
Fixes #45395.

git-svn-id: https://develop.svn.wordpress.org/trunk@49218 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 01:45:27 +00:00
Jonathan Desrosiers
f3397cc7cf Bundled Themes: Add the theme screenshot for Twenty Twenty-One
Follow up to [49216].

See #51526.

git-svn-id: https://develop.svn.wordpress.org/trunk@49217 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 01:27:09 +00:00
Jonathan Desrosiers
4b90066592 Bundled Themes: Import Twenty Twenty-One, the new default theme for WordPress 5.6.
Welcome to the bundled themes family!

Twenty Twenty-One is a blank canvas for your ideas, making the block editor your best brush.

Theme development to this point has taken place on GitHub. See: https://github.com/WordPress/twentytwentyone/.

Props poena, melchoyce, luminuu, elmastudio, bethsoderberg, williampatton, aristath, jffng, kjellr, jeffikus, audrasjb, fabiankaegy, mukesh27, dingo_d, kellylawrence, acosmin, whyisjake, metodiew, ryelle, nielslange, littlebigthing, mahesh901122, zebulan, kishanjasani, lukecavanagh, scruffian, abhijitrakas, utz119, sudoshreyansh, kau-boy, justinahinon, joostdevalk, bduclos, hareesh-pillai, mager19, rolfsiebers, webmigrates, sresok, guidooffermans, francina, marybaum, hareshlive, navanathbhosale, afercia, richtabor, joyously, sarahricker, nrqsnchz, glauberglauber, sabernhardt, kraftbj, ItsJonQ, joen, CTMartin0, decrecementofeliz, bhautikvirani.
See #51526.

git-svn-id: https://develop.svn.wordpress.org/trunk@49216 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 01:12:25 +00:00
Sergey Biryukov
2a8dae456d General: Remove noreferrer from wp_targeted_link_rel() and other uses.
When `noopener noreferrer` was originally added in #37941 and related tickets, the `noreferrer` bit was specifically included due to Firefox not supporting `noopener` at the time.

Since `noopener` has been supported by all major browsers for a while, it should now be safe to remove the `noreferrer` attribute from core.

Props Mista-Flo, audrasjb, joostdevalk, jonoaldersonwp, peterwilsoncc, elgameel.
Fixes #49558.

git-svn-id: https://develop.svn.wordpress.org/trunk@49215 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-19 23:37:53 +00:00
Sergey Biryukov
ffbde71040 Themes: Add a return value to set_theme_mod() to allow for error handling.
Props latifi, hareesh-pillai.
Fixes #51296.

git-svn-id: https://develop.svn.wordpress.org/trunk@49214 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-19 22:43:21 +00:00
Sergey Biryukov
d86bda1180 Administration: Remove obsolete .ac_results class references.
Core does not use the jQuery.suggest plugin since [38797].

Props afercia, hareesh-pillai, garrett-eclipse.
Fixes #40260.

git-svn-id: https://develop.svn.wordpress.org/trunk@49213 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-19 22:31:08 +00:00
Helen Hou-Sandi
80329c379a Multisite: More specific caching for get_dirsize.
Instead of one cache entry for all upload folders for a site on multisite, this now caches for each folder and invalidates that cache based on context. In multisite, this should speed up `get_dirsize` calls since older directories that are much less likely to change will no longer have the size recalculated.

Props janthiel, A5hleyRich, batmoo.
Fixes #19879.


git-svn-id: https://develop.svn.wordpress.org/trunk@49212 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-19 21:49:58 +00:00
Sergey Biryukov
052ac08385 Pings/Trackbacks: Split do_all_pings() into several functions:
* `do_all_pingbacks()`
* `do_all_enclosures()`
* `do_all_trackbacks()`

This allows for the specific removal/replacement of one of more services.

Props dshanske, garrett-eclipse, Mista-Flo, azaozz, hellofromTonya.
Fixes #36576.

git-svn-id: https://develop.svn.wordpress.org/trunk@49211 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-19 21:14:06 +00:00
Sergey Biryukov
bcfa865733 Editor: Expose the embed core block on the server.
Props ntsekouras, gziolo.
Fixes #51531.

git-svn-id: https://develop.svn.wordpress.org/trunk@49210 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-19 20:55:43 +00:00
Sergey Biryukov
98b6f199ef Coding Standards: Fix WPCS issues in [49207].
See #46866.

git-svn-id: https://develop.svn.wordpress.org/trunk@49209 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-19 20:43:34 +00:00
Sergey Biryukov
ab19c66463 Bundled Themes: Declare support for the html5 feature navigation-widgets.
Widgets that output a list of links are now wrapped within `<nav>` elements to improve semantics and accessibility.

The `<nav>` elements are native landmark regions, which helps assistive technology users to navigate through them.

Follow-up to [48349], [49177].

Props hareesh-pillai, justinahinon, afercia, williampatton.
Fixes #51445.

git-svn-id: https://develop.svn.wordpress.org/trunk@49208 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-19 20:30:47 +00:00
Anthony Burchell
ec624193eb Media: Add 'Uploaded to' for individual media items in the media editor.
Adds a link in the media editor showing which post a media item was uploaded to.
Props karmatosed, garrett-eclipse, Mista-Flo, SergeyBiryukov, joemcgill, hellofromTonya.
Fixes #46866.


git-svn-id: https://develop.svn.wordpress.org/trunk@49207 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-19 20:27:34 +00:00
Sergey Biryukov
8f88adf9d5 Coding Standards: Use more specific checks for $wpdb->get_row() results.
If `$wpdb->get_row()` is successful and the `$output` parameter has not been set, the output will be an instance of `stdClass`, so test to confirm that instead of testing against "not null".

This affects:
* `wpmu_validate_user_signup()`
* `wpmu_validate_blog_signup()`

Props jrf.
See #50767.

git-svn-id: https://develop.svn.wordpress.org/trunk@49206 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-19 20:18:44 +00:00
Anthony Burchell
1dd1db6ec0 Media: Indicate if media is header video in media library.
This introduces a label to indicate if a piece of media is being used as a video header in the media library.
Props desrosj, Mista-Flo, mikeschroder.
Fixes #42929.


git-svn-id: https://develop.svn.wordpress.org/trunk@49205 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-19 18:30:36 +00:00
Sergey Biryukov
c25f1719bf Widgets: Introduce before_sidebar and after_sidebar arguments for register_sidebar().
Props deepaklalwani, flixos90, christophherr, dgwyer, markoheijnen, morganestes, audrasjb.
Fixes #19709.

git-svn-id: https://develop.svn.wordpress.org/trunk@49203 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-19 15:38:11 +00:00
Sergey Biryukov
1ca7bc6718 Embeds: Only catch clicks from the primary mouse button in the click handler, without any modifier keys.
This ensures that Ctrl/Cmd + click to open a link in the embed iframe in a new tab works as expected.

Props timhavinga, garrett-eclipse, smerriman, swissspidy, johnbillion, Mte90, iandunn, azaozz, afercia, audrasjb, SergeyBiryukov.
Fixes #39097.

git-svn-id: https://develop.svn.wordpress.org/trunk@49202 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-19 13:34:03 +00:00
Sergey Biryukov
4362706c10 Docs: Add a @deprecated note to WP_Community_Events::format_event_data_time().
Follow-up to [49146].

See #51130.

git-svn-id: https://develop.svn.wordpress.org/trunk@49201 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-19 13:20:50 +00:00
Peter Wilson
86fc3af215 Canonical: Support multiple post types in redirect_guess_404_permalink().
Prevent `redirect_guess_404_permalink()` from throwing a notice when multiple post types are included in the `post_type` query.

Props junaidbhura.
Fixes #43056.



git-svn-id: https://develop.svn.wordpress.org/trunk@49200 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-18 23:21:03 +00:00
Sergey Biryukov
0392a498db Networks and Sites: Introduce network_site_info_form action.
The action fires at the end of the site info form in network admin, and complements the existing `network_site_new_form` action.

Props virgodesign.
Fixes #50704.

git-svn-id: https://develop.svn.wordpress.org/trunk@49199 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-18 21:15:51 +00:00
John Blackbourn
5efc326c34 Media: Add an image_sideload_extensions filter to the list of allowed file extensions when sideloading an image from a URL.
Props paulschreiber, hellofromTonya

Fixes #50695


git-svn-id: https://develop.svn.wordpress.org/trunk@49198 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-18 21:04:33 +00:00
John Blackbourn
ef8b5078f6 Docs: Further corrections and promotions for docblocks relating to object types.
See #50768


git-svn-id: https://develop.svn.wordpress.org/trunk@49197 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-18 20:52:01 +00:00
John Blackbourn
89a402c49c Docs: Improve the docs for the globals that are used in the actions and filters API.
See #50531, #50768


git-svn-id: https://develop.svn.wordpress.org/trunk@49196 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-18 19:17:29 +00:00
John Blackbourn
d51fc4b06c Media: Add an audio and video player to the media manager modal.
This introduces a means of playing existing audio and video files while browsing them prior to selecting them for use.

Props antpb, Mista-Flo, garrett-eclipse, mapk

Fixes #43640


git-svn-id: https://develop.svn.wordpress.org/trunk@49195 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-18 17:37:19 +00:00
Sergey Biryukov
422a9049b5 Code Modernization: Use instanceof instead of a comparison with get_class().
Includes adjusting external libraries which are no longer maintained externally.

Props jrf.
See #50767.

git-svn-id: https://develop.svn.wordpress.org/trunk@49194 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-18 17:31:37 +00:00
Sergey Biryukov
97b2f07d2e Coding Standards: Replace alias PHP functions with the canonical names.
Using the canonical function name for PHP functions is strongly recommended, as aliases may be deprecated or removed without (much) warning.

This replaces all uses of the following:
* `join()` with `implode()`
* `sizeof()` with `count()`
* `is_writeable()` with `is_writable()`
* `doubleval()` with a `(float)` cast

In part, this is a follow-up to #47746.

Props jrf.
See #50767.

git-svn-id: https://develop.svn.wordpress.org/trunk@49193 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-18 17:25:10 +00:00
Sergey Biryukov
f124a650ba Coding Standards: Use self when appropriate.
* `WP_List_Table::get_default_primary_column_name()` is a protected method, so calling it statically with the class name is bad practice.
* Similarly, this applies when calling a private constructor in `WP_Screen::get()`.

Props jrf.
See #50767.

git-svn-id: https://develop.svn.wordpress.org/trunk@49192 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-18 17:16:33 +00:00
John Blackbourn
f41b6b4d2e Administration: Allow WP_List_Table::get_bulk_items() to receive a nested array in order to output optgroups.
The allowed format for bulk actions is now an associative array where each element represents either a top level option value and label, or an array representing an optgroup and its options.

For a standard option, the array element key is the field value and the array element value is the field label.

For an optgroup, the array element key is the label and the array element value is an associative array of options as above.

Props goldenapples, mattkeys, valentinbora, davidbaumwald

Fixes #19278


git-svn-id: https://develop.svn.wordpress.org/trunk@49190 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-18 16:20:07 +00:00
Drew Jaynes
1f1adbeee8 Docs: Clarify documentation for what the 'count' orderby argument represents in WP_Term_Query.
Props jeremyescott.
Fixes #44443.


git-svn-id: https://develop.svn.wordpress.org/trunk@49189 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-18 08:21:06 +00:00
Sergey Biryukov
2991a01f3f Formatting: Deprecate wp_slash_strings_only() in favor of wp_slash().
The reason for introducing `wp_slash_strings_only()` in [46454] was to keep non-string values untouched.

Later, `wp_slash()` itself was updated in [48433] to prevent changing non-string values.

To avoid confusion, `wp_slash_strings_only()` is now deprecated.

Props ayeshrajans, ocean90.
Fixes #50635.

git-svn-id: https://develop.svn.wordpress.org/trunk@49188 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-18 06:55:16 +00:00
Sergey Biryukov
7164e4b4c8 Comments: Hide the link to the initial parent comment in the reply heading when replying to another comment.
This ensures that the reply heading is updated correctly on single post URLs with the `?replytocom` query argument.

Follow-up to [47506], [48876], [48904].

Props mailnew2ster, wpamitkumar, audrasjb, desrosj, SergeyBiryukov.
Fixes #51175.

git-svn-id: https://develop.svn.wordpress.org/trunk@49187 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-18 06:39:21 +00:00
Sergey Biryukov
918bebfe3c Code Modernization: Remove unnecessary reference sign from PO::export_entry() definition.
This fixes a PHP 8 "argument must be passed by reference, value given" error when using `array_map()` in `PO::export_entries()`.

Object variables in PHP 5+ contain a reference to the object, and it's the reference that's passed around.

Props jrf.
See #50913.

git-svn-id: https://develop.svn.wordpress.org/trunk@49186 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-18 06:27:38 +00:00
Sergey Biryukov
2c25a1a0ca Revisions: Explicitly declare the Text_Diff::_getTempDir() method as static.
This fixes a "Non-static method cannot be called statically" fatal error on PHP 8.

Props jrf.
Fixes #51559.

git-svn-id: https://develop.svn.wordpress.org/trunk@49185 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-17 16:34:45 +00:00
Sergey Biryukov
5bad4e7f8d Code Modernization: Use explicit visibility for class property declarations.
Using `var` or only `static` to declare a class property is PHP 4 code.

This updates the codebase to use explicit visibility modifiers introduced in PHP 5.

Props jrf.
Fixes #51557. See #22234.

git-svn-id: https://develop.svn.wordpress.org/trunk@49184 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-17 16:24:35 +00:00
John Blackbourn
5b6a20af07 Docs: Fix and upgrade various object docblock notations.
See #50768


git-svn-id: https://develop.svn.wordpress.org/trunk@49183 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-17 16:03:58 +00:00
Sergey Biryukov
b91257e97f Feeds: Fix "Only variables should be passed by reference" PHP notice in atomlib.php.
Props jrf.
Fixes #51558.

git-svn-id: https://develop.svn.wordpress.org/trunk@49182 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-17 15:43:39 +00:00
John Blackbourn
ff18031d1b Docs: Miscellaneous docblock fixes.
See #50768


git-svn-id: https://develop.svn.wordpress.org/trunk@49181 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-17 14:52:04 +00:00
John Blackbourn
b1833128fe Administration: Fix a coding standards issue after [49179].
See #50699


git-svn-id: https://develop.svn.wordpress.org/trunk@49180 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-17 12:32:45 +00:00
Andrew Ozz
6a2ef2d5b2 Fix and improve arranging of postboxes/metaboxes:
- Enable arranging only when the Screen Options tab is open.
- Prevent accidental/unintended dragging. Seen it happen mostly on laptops when using the mousepad/trackpad.
- Improve discoverability and usefulness by always showing the "drop zones" outline when postboxes are draggable/arrangeable.
- Add some (brief) explanation to the Screen Options tab helping the user understand what options are available and how to change them. This is especially helpful for screen reader users to give an idea how to use the screen options and what to expect.
- Fix/enhance some of the code in `postbox.js` and make it coding standards compliant.

See #50699.

git-svn-id: https://develop.svn.wordpress.org/trunk@49179 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-17 09:58:34 +00:00
Sergey Biryukov
14e3433b85 Administration: Wrap the list table items count to a new line on small screens.
This avoids overlapping with action buttons and brings some consistency to bottom paddings across various screens.

Props passoniate, afercia, anuj2, rolfsiebers, uxkai, ireneyoast, thijsvanloef, hellofromTonya, audrasjb, helen, SergeyBiryukov.
Fixes #49246.

git-svn-id: https://develop.svn.wordpress.org/trunk@49178 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-17 01:11:58 +00:00
Sergey Biryukov
0f6305e246 Accessibility: Widgets: Conditionally wrap the tag cloud widget in a <nav> element.
If the theme declares support for the `html5` feature `navigation-widgets`, the tag cloud widget is now wrapped in a `<nav>` element to improve semantics and accessibility.

The `<nav>` elements are native landmark regions, which helps assistive technology users to navigate through them.

Follow-up to [48349] for other widgets.

Props audrasjb, justinahinon, ravipatel.
Fixes #51455. See #48170.

git-svn-id: https://develop.svn.wordpress.org/trunk@49177 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-16 18:30:53 +00:00
Jonathan Desrosiers
f3f2aa135e External Libraries: Update the SimplePie library to version 1.5.6.
This version fixes a handful of PHP 8 compatibility issues.

A full list of changes included in this update can be found on GitHub: https://github.com/simplepie/simplepie/compare/1.5.5...1.5.6.

Props jrf, ayeshrajans.
Fixes #51521.

git-svn-id: https://develop.svn.wordpress.org/trunk@49176 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-16 17:18:11 +00:00
Mike Schroder
505fe2f0b8 Media: Work around use-cropbox bug in Ghostscript 8.70
Wraps `Imagick::readImage()` for PDFs with exception handling, trying again without `use-cropbox` if this fails.

Introduces `WP_Image_Editor_Imagick::pdf_load_source()`.

Works around a known issue in Ghostscript 8.70 (fixed in 8.71) that results in a stack underflow.
While it only affects this version, it remains a common version found on hosts, and prevented some PDF thumbnails from being generated.

See this Ghostscript bug for more details: https://bugs.ghostscript.com/show_bug.cgi?id=690676

Props azaozz, joseaneto, cranewest, dantahoua, n5hzr, mikeschroder.
Fixes #48853.

git-svn-id: https://develop.svn.wordpress.org/trunk@49174 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-16 10:46:58 +00:00
Sergey Biryukov
46119b8367 Docs: Add @since tags for the fire_after_hooks parameter of wp_insert_post(), wp_update_post(), and wp_insert_attachment().
Document the parameter as optional.

Follow-up to [49172].

See #45114.

git-svn-id: https://develop.svn.wordpress.org/trunk@49173 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-16 09:38:17 +00:00
Peter Wilson
254ca903b2 REST API, Posts: Add a hook to fire once a post, its terms and meta update.
Introduces the action `wp_after_insert_post` inside a wrapper function of the same name. This hook allows plugin developers to access a posts full data (including its terms and meta data) regardless of the workflow used to save it.

A new parameter is introduced to `wp_insert_post()` to indicate whether the hook should be fired within the function call or will be fired afterward.

Props aristath, Collizo4sky, danielbachhuber, joyously, kadamwhite, kraftbj, markparnell, mikeschroder, noisysocks, peterwilsoncc, SergeyBiryukov, talldanwp, thewebprincess, TimothyBlynJacobs.
Fixes #45114.


git-svn-id: https://develop.svn.wordpress.org/trunk@49172 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-16 03:32:11 +00:00
Peter Wilson
3965584a04 Taxonomy: Fix warnings thrown by custom term count callbacks.
Add a `use` to a closure to avoid an undefined variable throwing a warning. Adds unit tests to ensure the custom callbacks run as expected when defined.

Follow up to [49141].
Props ocean90, dd32.
Fixes #40351.



git-svn-id: https://develop.svn.wordpress.org/trunk@49171 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-16 02:41:15 +00:00
Sergey Biryukov
901edbe510 Privacy: Denote removed suggested privacy policy text in a more noticeable way.
Props garrett-eclipse, sabernhardt, audrasjb.
Fixes #51435.

git-svn-id: https://develop.svn.wordpress.org/trunk@49170 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-16 01:27:14 +00:00
Sergey Biryukov
45432f4c39 Upgrade/Install: Check if plugin or theme update results are available before applying the notification filters.
This avoids a PHP notice for an undefined index of either `plugin` or `theme` in the `auto_{plugin|theme}_update_send_email` filter hook.

Props afragen, audrasjb.
Fixes #51400.

git-svn-id: https://develop.svn.wordpress.org/trunk@49166 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-15 23:25:19 +00:00
Jonathan Desrosiers
805351a478 External Libraries: Update React, ReactDOM and Lodash.
This updates:
- `react` and `react-dom` from `16.9.0` to `16.13.1`.
- `lodash from `4.17.15` to `4.17.19`.

Props isabel_brison.
Fixes #51505.

git-svn-id: https://develop.svn.wordpress.org/trunk@49165 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-15 23:06:49 +00:00
Sergey Biryukov
93a325ccf8 Bootstrap/Load: Don't assume WP_CONTENT_DIR is defined.
When the `mysql` extention isn't loaded and a custom db dropin is not in place, we give folks a nice error. However, we can't assume that the `WP_CONTENT_DIR` constant is set yet since this runs before we define default constants.

This fixes a PHP 8 error.

Props jorbin.
Merges [49161] to trunk.
See #50913.

git-svn-id: https://develop.svn.wordpress.org/trunk@49163 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-15 21:14:35 +00:00
Sergey Biryukov
c0f41b5d3c Comments: Further remove unnecessary context switch in Walker_Comment.
Follow-up to [49157].

See #51533.

git-svn-id: https://develop.svn.wordpress.org/trunk@49160 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-15 15:24:57 +00:00
Sergey Biryukov
fee906ad14 Twenty Nineteen: Remove extra space from the comment link in TwentyNineteen_Walker_Comment.
Fixes #51533.

git-svn-id: https://develop.svn.wordpress.org/trunk@49159 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-15 15:22:42 +00:00
Sergey Biryukov
7bfe507dad Twenty Twenty: Remove extra space from the comment link in TwentyTwenty_Walker_Comment.
See #51533.

git-svn-id: https://develop.svn.wordpress.org/trunk@49158 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-15 15:11:43 +00:00
Sergey Biryukov
8bf847bdf4 Comments: Remove extra space from the comment link in Walker_Comment.
Props poena, mukesh27, SergeyBiryukov.
See #51533.

git-svn-id: https://develop.svn.wordpress.org/trunk@49157 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-15 15:05:09 +00:00
Timothy Jacobs
efe06cdcea Site Health, REST API: Move async tests to REST API endpoints.
This provides more flexibility when writing tests and benefits from running in a front-end context which is necessary for some tests like checking that updates are supported. Additionally, this provides a more robust interface for developers who want to integrate with Site Health tests.

Because the `wp/v2` endpoint is reserved for modeling core entities, site health is registered in its own `wp-site-health/v1` namespace.

The existing ajax actions have been maintained for backward compatibility.

Props Clorith, chrisvanpatten, afragen, pokhriyal, TimothyBlynJacobs.
Fixes #48105.


git-svn-id: https://develop.svn.wordpress.org/trunk@49154 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-15 01:58:28 +00:00
Sergey Biryukov
50fa352cbb Docs: Improve description of the $email parameter in email_exists().
Follow-up to [49148].

Props garrett-eclipse.
See #51379.

git-svn-id: https://develop.svn.wordpress.org/trunk@49153 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-15 00:14:51 +00:00
Ian Dunn
52f2d0db81 Community Events: Update timezone-related @since tags to 5.5.2.
r49145 and r49146 were originally planned for 5.6 when they were committed, but are now planned for 5.5.2.

See #51130.


git-svn-id: https://develop.svn.wordpress.org/trunk@49152 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-14 21:33:10 +00:00
Dominik Schilling
d0ec93f293 I18N: Use wp.i18n for translatable strings in wp-admin/js/dashboard.js.
* Deprecate the `l10n` property on `communityEventsData`.
* Introduce `version` parameter for `deprecateL10nObject` and backfill the version for deprecated objects in 5.5.0.
* Add a noop version of `deprecateL10nObject` for QUnit testing.

Fixes #51498.

git-svn-id: https://develop.svn.wordpress.org/trunk@49151 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-14 21:11:09 +00:00
Helen Hou-Sandi
0aa3ade1fe Updates: Reduce secondary buttons for less visual complexity.
Props audrasjb, karmatosed.
Fixes #51523.


git-svn-id: https://develop.svn.wordpress.org/trunk@49150 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-14 20:25:17 +00:00
Helen Hou-Sandi
c8d94810d3 Admin Menu: Better wrapping for long menu item names.
Props munyagu, jagirbaheshwp, harshbarach, pratikkry, hareesh-pillai, naveenkharwar, mukesh27, chetan200891, dushanthi, worldweb, audrasjb, afercia, amolv, iqbalbary, davidbaumwald, sabernhardt, johnjamesjacoby, garrett-eclipse, garrett-eclipse.
Fixes #42201.


git-svn-id: https://develop.svn.wordpress.org/trunk@49149 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-14 19:51:12 +00:00
Sergey Biryukov
d011853b7b Users: Introduce email_exists filter, to complement username_exists.
Props garrett-eclipse, apermo, mukesh27, Mista-Flo, sebastian.pisula, mikelopez.
Fixes #51379. See #35509.

git-svn-id: https://develop.svn.wordpress.org/trunk@49148 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-14 19:02:22 +00:00
Ian Dunn
0fbe425a3e Community Events: Apply coding standards.
The previous commits intentionally didn't include these, because it would have added an unreasonable amount of diff noise.

See #51130


git-svn-id: https://develop.svn.wordpress.org/trunk@49147 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-14 18:20:40 +00:00
Ian Dunn
92aa799e89 Community Events: Display dates and times in the user's time zone.
Fixes #51130
Props sippis, hlashbrooke, audrasjb, Rarst, iandunn


git-svn-id: https://develop.svn.wordpress.org/trunk@49146 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-14 18:19:43 +00:00
Ian Dunn
92eba9720e Community Events: Trim events by Unix timestamp for accuracy.
The `date` and `end_date` fields are ''WP'' timestamps representing the venue's local time. As of meta:changeset:10270 (#meta4480), new `start_unix_timestamp` and `end_unix_timestamp` values are available, providing a proper ''Unix'' timestamp in the  UTC timezone. Using those is more precise, and removes the time window where the event has expired but still appears in the Events Widget.

To simplify the function, it now only accepts and returns the events themselves, rather than the entire response body.

See #51130
See #meta4480
Related: https://make.wordpress.org/core/2019/09/23/date-time-improvements-wp-5-3/


git-svn-id: https://develop.svn.wordpress.org/trunk@49145 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-14 18:17:55 +00:00
Sergey Biryukov
3a19ff15f9 General: Move wp_array_get() next to wp_array_slice_assoc(), for a bit more consistent placement.
Follow-up to [49135], [49143].

See #51461.

git-svn-id: https://develop.svn.wordpress.org/trunk@49144 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-14 02:14:34 +00:00
Sergey Biryukov
f3f53fb4e4 General: Move wp_array_get() from a separate file to wp-includes/functions.php, for consistency.
Add missing `@since` tag, adjust the DocBlock per the documentation standards.

Follow-up to [49135].

Props isabel_brison, ocean90.
Fixes #51461.

git-svn-id: https://develop.svn.wordpress.org/trunk@49143 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-14 02:08:54 +00:00
Sergey Biryukov
de89e7292e Administration: Make sure list table row actions in Extended view stay visible when a single row gets focus.
Follow-up to [48398], [48423], [48424], [48450], [48670].

Props ryelle.
Fixes #51516. See #49715.

git-svn-id: https://develop.svn.wordpress.org/trunk@49142 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-14 02:01:00 +00:00
Peter Wilson
36ef9cbca9 Taxonomy: Improve performance of term recounting database queries.
When modifying terms assigned to an object, replace full term recounts with incrementing/decrementing the count as appropriate. This provides a significant performance boost on sites with a high number of term/object relationships and/or posts.

Introduces the functions `wp_increment_term_count()`, `wp_decrement_term_count()`, `wp_modify_term_count_by()` and `wp_modify_term_count_by_now()` for updating the term count.

Introduces the function `_wp_prevent_term_counting()` for preventing double counting on posts that are about to transition.

Adds the parameter `update_count_by_callback` to `register_taxonomy()` to allow developers to use a custom callback for incrementing or decrementing a term count.

Props boonebgorges, davidbaumwald, hellofromTonya, johnbillion, lcyh78, mattoperry, peterwilsoncc, rebasaurus, whyisjake.
Fixes #40351.



git-svn-id: https://develop.svn.wordpress.org/trunk@49141 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-14 00:49:52 +00:00
Dominik Schilling
e676d46723 Users: Enable Application Passwords for local development environments, even if HTTPS is not available.
This will make testing the new feature easier since the local development environment is only accessible via HTTP by default.
Also update docs to link to the relevant filters.

See #42790.
Fixes #51503.

git-svn-id: https://develop.svn.wordpress.org/trunk@49139 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-13 20:08:23 +00:00
Dominik Schilling
798a3ba35e Administration: Restore alternative admin menu position for menu items with the same position value as an existing menu item.
Reverts parts of [49108].

Props johnjamesjacoby.
Fixes #42918.

git-svn-id: https://develop.svn.wordpress.org/trunk@49138 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-13 19:57:10 +00:00
Sergey Biryukov
5fa77839fe Sitemaps: Check the result of get_term_link() when collecting the URLs in WP_Sitemaps_Taxonomies::get_url_list().
This avoids a PHP warning during sitemap generation if `get_term_link()` returns an error, e.g. due to term ID being shared between multiple taxonomies.

Additionally, pass the `$taxonomy` argument to `get_term_link()` to properly disambiguate the call.

Props dd32.
Fixes #51416.

git-svn-id: https://develop.svn.wordpress.org/trunk@49137 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-13 15:02:23 +00:00
Sergey Biryukov
3021eff927 External Libraries: Upgrade PHPMailer to version 6.1.8.
For a full list of changes in this update, see the PHPMailer GitHub:
https://github.com/PHPMailer/PHPMailer/compare/v6.1.7...v6.1.8

Props ayeshrajans.
Fixes #51502.

git-svn-id: https://develop.svn.wordpress.org/trunk@49136 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-13 13:58:15 +00:00