Commit Graph

10864 Commits

Author SHA1 Message Date
Jake Spurlock
f72dc8ca54 Upgrade/Install: During the install process, add additional checking for exising tables.
If reinstalling WordPress, there is a condition where tables would exist in the database. Ensures that when that is the case, the install process can carry along without issue.

Fixes #51676.

Props xknown, garubi, mukesh27, desrosj, johnbillion, metalandcoffee, davidbaumwald, whyisjake.



git-svn-id: https://develop.svn.wordpress.org/trunk@49452 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-30 17:50:25 +00:00
Peter Wilson
088fd3cd39 Taxonomy: Revert Light-weight/partial term counts.
Partial revert of [49141], [49171], [49316].

All functional changes are removed, appropriate term counting unit tests are retained.

See #40351.


git-svn-id: https://develop.svn.wordpress.org/trunk@49451 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-30 04:57:16 +00:00
Jonathan Desrosiers
d5ddd6d4be Meta: Sanitize meta key before checking protection status.
Props zieladam, peterwilsoncc, xknown, whyisjake.
Merges [49377,49381] to trunk.

git-svn-id: https://develop.svn.wordpress.org/trunk@49387 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 18:05:21 +00:00
Jonathan Desrosiers
2ca15d1e5c Upgrade/install: Improve logic check when determining installation status.
Improve handling of ambiguous return values to determine if a blog is installed.

Props zieladam, xknown.
Merges [49377] to trunk.

git-svn-id: https://develop.svn.wordpress.org/trunk@49386 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 18:03:35 +00:00
Jonathan Desrosiers
a6488f3ffb XML-RPC: Return error message if attachment ID is incorrect.
Throw an error for incorrect attachment IDs when requesting a media object to ensure return signature is correct and doesn't include incorrectly typed values within the object.

Props zieladam, peterwilsoncc, whyisjake.
Merges [49376] to trunk.
See #49905.

git-svn-id: https://develop.svn.wordpress.org/trunk@49385 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 18:02:22 +00:00
Jonathan Desrosiers
4cbb155815 Embeds: Disable embeds on deactivated Multisite sites.
Props xknown, whyisjake, zieladam, peterwilsoncc.
Merges [49374] to trunk.

git-svn-id: https://develop.svn.wordpress.org/trunk@49383 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 17:59:40 +00:00
Jonathan Desrosiers
add6bedf3a External Libraries: Disable deserialization in Requests_Utility_FilteredIterator
Props xknown, peterwilsoncc, desrosj, dd32, whyisjake.
Merges [49373] to trunk.

git-svn-id: https://develop.svn.wordpress.org/trunk@49382 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 17:58:49 +00:00
Jonathan Desrosiers
c9e6b98968 XML-RPC: Improve error messages for unprivileged users.
Add specific permission checks to avoid ambiguous failure messages.

Props zieladam, peterwilsoncc, xknown, whyisjake.

git-svn-id: https://develop.svn.wordpress.org/trunk@49380 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 17:42:13 +00:00
Sergey Biryukov
cc5e183da9 Themes: Clarify the _doing_it_wrong() message for post formats in add_theme_support().
Follow-up to [49344], [49354], [49365].

See #51390.

git-svn-id: https://develop.svn.wordpress.org/trunk@49367 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 00:07:01 +00:00
Jake Spurlock
ebf85d6d3e Embeds: Remove Facebook and Instagram as an oEmbed Source
Facebook has depracated all non-authenticated endpoints for Facebook and Instagram. 

See: https://developers.facebook.com/docs/plugins/oembed-legacy
See also: https://make.wordpress.org/core/2020/09/22/facebook-and-instagram-embeds-to-be-deprecated-october-24th/

With this change, endpoints are being removed. If a site is dependent on this feature, they need to pass either an app or client token. There are a few plugins that add this functionality.

Fixes #50861.
Props johnbillion, joyously, mkaz, dimadin, ayeshrajans, davisshaver, paaljoachim, Clorith, bridgetwillard, jb510, sippis, Clorith, TimothyBlynJacobs, desrosj, smub, audrasjb, whyisjake.


git-svn-id: https://develop.svn.wordpress.org/trunk@49359 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-28 19:09:42 +00:00
John Blackbourn
72a37d46ac Cron API: Improve the inline documentation for the args passed to the cron event scheduling functions.
Props chadreitsma, peterwilsoncc

Fixes #51605


git-svn-id: https://develop.svn.wordpress.org/trunk@49357 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-28 18:35:14 +00:00
Sergey Biryukov
82227c9fa6 General: Ensure that filtered arguments in get_search_form() contain all required default values.
Props kellybleck, davidbaumwald, whyisjake, SergeyBiryukov.
Fixes #51645.

git-svn-id: https://develop.svn.wordpress.org/trunk@49355 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-28 16:55:42 +00:00
Sergey Biryukov
4f6eee8e72 Themes: Move the test for post-formats theme support to a more appropriate place.
Follow-up to [49344].

See #51390.

git-svn-id: https://develop.svn.wordpress.org/trunk@49354 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-28 15:12:40 +00:00
Helen Hou-Sandi
8187cff8f7 Post WordPress 5.6 beta 2 version bump.
git-svn-id: https://develop.svn.wordpress.org/trunk@49351 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-27 22:00:56 +00:00
Helen Hou-Sandi
8a3e34d9ad WordPress 5.6 Beta 2.
git-svn-id: https://develop.svn.wordpress.org/trunk@49350 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-27 21:40:26 +00:00
Helen Hou-Sandi
357c1c0b86 Post Formats: You have to pass an array of supported post formats.
This shows a `_doing_it_wrong()` message and also returns false instead of true if no array of formats is passed in `add_theme_support()`, avoiding a PHP error.

Post formats maintainership comes full circle. 🙃

Props Mista-Flo, sproutchris, garrett-eclipse.
Fixes #51390.


git-svn-id: https://develop.svn.wordpress.org/trunk@49344 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-27 19:58:10 +00:00
Timothy Jacobs
0187bbdd7e Site Health, App Passwords: Test if the Authorization header is populated correctly.
App Passwords rely on the Authorization header to transport the Basic Auth credentials. For Apache web servers, WordPress automatically includes a RewriteRule to populate the value for servers running in CGI or FastCGI that wouldn't ordinarily populate the value. 

This tests if the header is being filled with the expected values. For Apache users, we direct the user to visit the Permalinks settings to flush their permalinks. For all other users, we direct them to a help document on developer.wordpress.org.

Props Clorith, marybaum, TimothyBlynJacobs.
Fixes #51638.


git-svn-id: https://develop.svn.wordpress.org/trunk@49334 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-27 18:30:03 +00:00
Timothy Jacobs
d56906f5b0 REST API: Support a broader range of JSON media types.
Previously, we only supported `application/json` which prevented using subtypes like `application/activity+json`. This allows for the REST API to `json_decode` the body of requests using a JSON subtype `Content-Type`. Additionally, `wp_die()` now properly sends the error as JSON when a JSON subtype is specified in the `Accept` header.

Props pfefferle.
Fixes #49404.


git-svn-id: https://develop.svn.wordpress.org/trunk@49329 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-27 16:42:38 +00:00
Sergey Biryukov
fce8f2bf4d Posts, Post Types: Check if taxonomy is set for the tax_input parameter of wp_insert_post().
This avoids a PHP notice when creating a post with multiple taxonomies both having a default term.

Props yakimun, szaqal21, hareesh-pillai, audrasjb.
Fixes #51320.

git-svn-id: https://develop.svn.wordpress.org/trunk@49328 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-27 16:40:35 +00:00
Sergey Biryukov
548d03026b Docs: Fix typo in {$old_status}_to_{$new_status} hook description.
See #50768.

git-svn-id: https://develop.svn.wordpress.org/trunk@49326 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-27 15:40:21 +00:00
Riad Benguella
dda3adec97 Block Editor: Update the WordPress packages for 5.6 beta 2
It contains:

- Fix drop zone indicators for non blocks.
- Fix archives block render function.
- Code block: preserve indentation on paste.
- Turn off autocomplete for token input. 
- Fix parent post selector: ensure initial value available, search performed, all results shown. 
- Fix gallery block undo issue.

Props isabel_brison.
Fixes #51640.


git-svn-id: https://develop.svn.wordpress.org/trunk@49324 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-27 09:32:50 +00:00
Peter Wilson
db2a1ba75d Taxonomy: Fix values passed to actions in wp_modify_term_count_by_now().
Replace the `WP_Taxonomy` object with the taxonomy slug in the values passed to the actions `edit_term_taxonomy` and `edited_term_taxonomy` within `wp_modify_term_count_by_now()`.

Follow up to [49141], [49171].
Props Chouby, lcyh78.
Fixes #40351.



git-svn-id: https://develop.svn.wordpress.org/trunk@49316 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-26 23:05:22 +00:00
Sergey Biryukov
f108962185 Docs: Correct description for wp_pre_insert_user_data filter.
Props audrasjb.
Fixes #51637.

git-svn-id: https://develop.svn.wordpress.org/trunk@49314 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-26 22:51:51 +00:00
Sergey Biryukov
430320e905 Docs: Correct DocBlock formatting for render_block().
Follow-up to [49310].

See #51606.

git-svn-id: https://develop.svn.wordpress.org/trunk@49312 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-26 21:53:43 +00:00
Sergey Biryukov
f09b69c410 Docs: Add missing @since tags for properties in some block editor classes:
* `WP_Block_Pattern_Categories_Registry`
* `WP_Block_Patterns_Registry`
* `WP_Block_Supports`

Follow-up to [48156], [49226].

See #50768.

git-svn-id: https://develop.svn.wordpress.org/trunk@49311 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-26 21:49:26 +00:00
Riad Benguella
7be4701404 Block Editor: Fix WP_Block_Supports class compatibility with Gutenberg-provided class.
When using WordPress trunk with Gutenberg master, there's an incompatibility causing 
the dynamic block generated classes to be omitted.
This commit refactors the block supports to fix that problem.

Props nosolosw.
Fixes #51606.


git-svn-id: https://develop.svn.wordpress.org/trunk@49310 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-26 08:29:04 +00:00
Sergey Biryukov
f13776cd8d General: Use correct value for the speak property in various CSS files.
Follow-up to [49263].

Props hareesh-pillai.
Fixes #51622.

git-svn-id: https://develop.svn.wordpress.org/trunk@49309 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-26 02:23:24 +00:00
Timothy Jacobs
3646dd2e9f REST API: Prevent PHP warning when metadata schema is missing properties.
This switches to the new `rest_default_additional_properties_to_false()` function which doesn't have this issue and deprecates the `WP_REST_Meta_Fields::default_additional_properties_to_false()` method.

Props austin880625.
Fixes #51389.


git-svn-id: https://develop.svn.wordpress.org/trunk@49308 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-25 20:28:50 +00:00
Sergey Biryukov
715bfc8664 Docs: Correct an example in wp_kses_normalize_entities() description.
Props ediamin.
Fixes #51620.

git-svn-id: https://develop.svn.wordpress.org/trunk@49304 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-25 00:12:40 +00:00
Timothy Jacobs
1e030c4062 REST API, XML-RPC: Synchronise empty comment content checks.
The REST API and XML-RPC now uses the same detection methodology for empty comment content as `wp_handle_comment_submission()`. Specifically, comments now have their content trimmed and '0' is allowed.

Props jaswrks, rmccue, dd32, rachelbaker, Cawa-93, aduth, TimothyBlynJacobs.
Fixes #43177.


git-svn-id: https://develop.svn.wordpress.org/trunk@49303 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-24 22:44:38 +00:00
Timothy Jacobs
e66f459435 REST API: Don't validate status if it hasn't changed.
In particular, this allows for sending `status=inherit` to an attachment if it's current status is `inherit`. This status would be rejected because it is an "internal" post status which isn't exposed.

As a general rule, a developer should always be able to PUT back a GET response without error.

Props dfenton, pputzer, TimothyBlynJacobs.
Fixes #40399.



git-svn-id: https://develop.svn.wordpress.org/trunk@49302 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-24 16:02:34 +00:00
Timothy Jacobs
ff989eccce REST API: Make template handling resilient against plugins setting the global post.
Plugins shouldn't be setting the global post object during a REST API request, but if they did this could cause unexpected errors when creating a post with a template.

Props Kipperlenny, TimothyBlynJacobs.
Fixes #49695.


git-svn-id: https://develop.svn.wordpress.org/trunk@49301 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-24 14:10:26 +00:00
Timothy Jacobs
84e533ab9d REST API: Reuse namespace property instead of the undeclared rest_namespace.
Props itowhid06.
Fixes #48297.


git-svn-id: https://develop.svn.wordpress.org/trunk@49300 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-24 13:52:22 +00:00
Timothy Jacobs
b8cdf1be50 REST API: Support generating comment up links to custom posts controllers.
The comments controller now uses the `rest_get_route_for_post` function introduced in WordPress 5.5 to generate the link. This function is filterable to allow for custom controllers to properly define their REST API route.

Props dsifford, TimothyBlynJacobs.
Fixes #44152.


git-svn-id: https://develop.svn.wordpress.org/trunk@49299 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-24 13:18:50 +00:00
Timothy Jacobs
6722f3aefb REST API: Deprecate WP_REST_Meta_Fields::register_field().
This method never worked properly and cannot be fixed due to incompatible method signatures.

Props flixos90, kadamwhite, jnylen0, TimothyBlynJacobs.
Fixes #39959.


git-svn-id: https://develop.svn.wordpress.org/trunk@49295 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-24 04:25:22 +00:00
Sergey Biryukov
2252cdaa8d Docs: Document the return value of wp_prepare_attachment_for_js() using hash notation.
Props stevenlinx, Mista-Flo, johnbillion.
Fixes #50835.

git-svn-id: https://develop.svn.wordpress.org/trunk@49281 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-23 00:41:15 +00:00
Timothy Jacobs
fe2053f2c1 App Passwords: Support an app_id to uniquely identify instances of an app.
Apps may now optionally include an `app_id` parameter when directing the user to the Authorize Application screen. This allows for instances of an application to be identified and potentially revoked or blocked.

Props TimothyBlynJacobs, georgestephanis.
Fixes #51583.


git-svn-id: https://develop.svn.wordpress.org/trunk@49276 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-22 15:04:23 +00:00
Peter Wilson
9aececb374 XML-RPC: Fix length validation of anonymous commenter's email address.
Fix the first step of validating an anonymous commenters in which the length is checked prior to running regular expressions.

Follow up to [47808].
Fixes #51595.



git-svn-id: https://develop.svn.wordpress.org/trunk@49271 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-22 02:40:06 +00:00
Jonathan Desrosiers
9648a29c05 Administration: Fix an invalid property in the Dashicons CSS file.
Props komagain.
Fixes #51587.

git-svn-id: https://develop.svn.wordpress.org/trunk@49263 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-21 13:14:17 +00:00
Helen Hou-Sandi
fb28c15e3c Post-post WordPress 5.6 beta 1 version bump.
git-svn-id: https://develop.svn.wordpress.org/trunk@49262 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 22:21:42 +00:00
Helen Hou-Sandi
1bcf3edd59 Post-WordPress 5.6 Beta 1 version bump.
git-svn-id: https://develop.svn.wordpress.org/trunk@49261 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 22:17:28 +00:00
Helen Hou-Sandi
24705a129e WordPress 5.6 Beta 1.
git-svn-id: https://develop.svn.wordpress.org/trunk@49260 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 21:45:21 +00:00
Timothy Jacobs
18c1ab8e89 REST API: Make sure all supported JSON Schema keywords are output in the index.
Previously, only a small subset of keywords were exposed which limited the utility of `OPTIONS` requests.

Props raubvogel, TimothyBlynJacobs.
Fixes #51020.


git-svn-id: https://develop.svn.wordpress.org/trunk@49257 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 20:17:20 +00:00
Sergey Biryukov
fdcff8b475 Comments: Add a filter for top level comments query arguments in comments_template().
Props hellofromTonya, Howdy_McGee, garrett-eclipse, davidbaumwald, thomaslhotta.
Fixes #38074.

git-svn-id: https://develop.svn.wordpress.org/trunk@49256 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 20:09:39 +00:00
Timothy Jacobs
9defd1fabc REST API: Introduce support for batching API requests.
A new route is introduced, `batch/v1`, that accepts a list of API requests to run. Each request runs in sequence, and the responses are returned in the order they've been received.

Optionally, the `require-all-validate` validation mode can be used to first validate each request's parameters and only proceed with processing if each request validates successfully.

By default, the batch size is limited to 25 requests. This can be controlled using the `rest_get_max_batch_size` filter. Clients are strongly encouraged to discover the maximum batch size supported by the server by making an OPTIONS request to the `batch/v1` endpoint and inspecting the described arguments.

Additionally, the two new methods, `match_request_to_handler` and `respond_to_request` introduced in [48947] now have a `protected` visibility as we don't want to expose the inner workings of the `WP_REST_Server::dispatch` API.

Batching is not currently supported for GET requests.

Fixes #50244.
Props andraganescu, zieladam, TimothyBlynJacobs.


git-svn-id: https://develop.svn.wordpress.org/trunk@49252 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-20 19:08:48 +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
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
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