Commit Graph

10668 Commits

Author SHA1 Message Date
Sergey Biryukov
23528d419a Script Loader: Add backward compatibility for JavaScript i18n globals and properties deprecated in WordPress 5.5.
The recommended approach for any plugins using these globals or properties is to switch to the newer `wp.i18n` functions.

In the meantime, this ensures that accessing any of these globals does not break the rest of the code on the page, and an appropriate warning message is logged to the JavaScript console.

Follow-up to: https://core.trac.wordpress.org/query?summary=~wp.i18n&milestone=5.5

Props omarreiss, peterwilsoncc, kbjohnson90, johnbillion, TimothyBlynJacobs, joostdevalk, ocean90, desrosj, SergeyBiryukov.
Fixes #51123.

git-svn-id: https://develop.svn.wordpress.org/trunk@48923 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-31 20:28:41 +00:00
Sergey Biryukov
d33fa375f6 Date/Time: In get_the_date() and related functions, pass the original, unmodified $format value to the filters.
Additionally, simplify the `$format` argument checks for consistency with similar checks in `get_the_modified_date()` and `get_the_modified_time()`.

Follow-up to [48912].

Props Rarst.
See #51184.

git-svn-id: https://develop.svn.wordpress.org/trunk@48918 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-31 18:28:42 +00:00
Sergey Biryukov
3309309f6b Date/Time: Make sure get_the_date() and related functions return correct time if the format was specified as false.
Technically, the `$format` argument should always be a string, but passing `false` used to work before [47808], so this restores backward compatibility.

The list of affected functions:
* `get_the_date()`
* `get_the_time()`
* `get_comment_date()`
* `get_comment_time()`

Props wittich, Rarst, akabarikalpesh, SergeyBiryukov.
Fixes #51184.

git-svn-id: https://develop.svn.wordpress.org/trunk@48912 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-31 15:56:41 +00:00
Sergey Biryukov
0013f5979c Media: Make the is_gd_image() function available on front end.
This avoids a fatal error if a plugin calls image creation or editing functions like `wp_imagecreatetruecolor()` outside of the admin.

Follow-up to [48798]

Props BackuPs.
Fixes #51174. See #50833.

git-svn-id: https://develop.svn.wordpress.org/trunk@48905 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-28 16:43:31 +00:00
Sergey Biryukov
a0b40ebd6a Script Loader: Disable concatenation for scripts with translations to ensure they are printed in the right order.
Props herregroen, ocean90, desrosj, mikeyarce, bobbingwide, audrasjb, johnbillion.
Fixes #50999.

git-svn-id: https://develop.svn.wordpress.org/trunk@48897 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 21:57:01 +00:00
Sergey Biryukov
6c395a5f3e Bootstrap/Load: Check if the __() function is available in wp_get_environment_type().
The function would not exist in `SHORTINIT` mode.

Follow-up to [48894].

See #50992.

git-svn-id: https://develop.svn.wordpress.org/trunk@48895 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 21:37:33 +00:00
Sergey Biryukov
a0864835a5 Bootstrap/Load: Remove the ability to alter the list of environment types in wp_get_environment_type().
The intention of `wp_get_environment_type()` is to provide a consistent means of identifying the environment type, not of identifying a specific environment.

Actual environments should fit within one of the existing types: `local`, `development`, `staging`, or `production`. That should cover the types that plugins and themes might be concerned about when toggling functionality. 

Props johnbillion, joostdevalk, TimothyBlynJacobs, jeremyfelt, batmoo, claytoncollie, Clorith, markjaquith, garrett-eclipse, GaryJ, elrae.
Fixes #50992.

git-svn-id: https://develop.svn.wordpress.org/trunk@48894 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 21:30:33 +00:00
Sergey Biryukov
6a6241ac6a Script Loader: Change the jquery handle back to an alias for jquery-core.
This ensures that `wp_localize_script( 'jquery', ... )` continues to work as expected, since `WP_Scripts::localize()` rewrites the `jquery` handle to `jquery-core` internally.

Follow-up to [48323].

Props mukesh27, rajeshsingh520, johnbillion, TimothyBlynJacobs, TobiasBg.
Fixes #50919.

git-svn-id: https://develop.svn.wordpress.org/trunk@48890 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 20:31:23 +00:00
Jorge Costa
fb04a13f46 Editor: update packages.
The following package versions were changed:
@wordpress/block-directory: 1.13.6 -> 1.13.7
@wordpress/block-editor: 4.3.6 -> 4.3.7
@wordpress/block-library: 2.22.6 -> 2.22.7
@wordpress/components: 10.0.5 -> 10.0.6
@wordpress/edit-post: 3.21.6 -> 3.21.7
@wordpress/editor: 9.20.6 -> 9.20.7
@wordpress/format-library: 1.22.6 -> 1.22.7
@wordpress/list-reusable-blocks: 1.21.5 -> 1.21.6
@wordpress/nux: 3.20.5 -> 3.20.6
@wordpress/server-side-render: 1.16.5 -> 1.16.6
Includes PR WordPress/gutenberg#24828

Props nosolosw, desrosj, SergeyBiryukov, youknowriad.
Fixes: #51151.

git-svn-id: https://develop.svn.wordpress.org/trunk@48884 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 16:34:37 +00:00
Timothy Jacobs
6c76a13139 REST API: Fix multi-type schemas with integer fields.
In [48306] support for multi-typed schemas was improved to first detect the data type of the value before applying further validation. The `integer` data type was detected using the new `rest_is_integer` function. This function used logic, however, that assumed that the value had already passed an `is_numeric` check. This meant that if `integer` and `string` were both acceptable types, the value would always be considered an `integer` causing the later accurate type validation to fail.

This commit fixes the `rest_is_integer` logic to include an `is_numeric` check.

Props rtagliento.
Fixes #51146.


git-svn-id: https://develop.svn.wordpress.org/trunk@48881 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 02:55:39 +00:00
Peter Wilson
bae635f1a0 Sitemaps: Prevent incorrect redirection of paged sitemap requests.
Update `redirect_canonical()` to account for custom pagination and URL format used by sitemaps in order to follow standard practices.

Introduce the function `get_sitemap_url()` to simplify getting the index and provider URLs as needed.

Props jonathanstegall, pbiron, GamerZ, salvoaranzulla, peterwilsoncc.
Fixes #50910.



git-svn-id: https://develop.svn.wordpress.org/trunk@48872 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 01:28:24 +00:00
Jonathan Desrosiers
066882a4a8 Media: Disable lazy-loading for custom logos by default.
Custom site logos are most commonly displayed above the fold, so lazy-loading is unnecessary.

Props demetris, khag7, johnbillion, rebasaurus, audrasjb.
Fixes #50933.

git-svn-id: https://develop.svn.wordpress.org/trunk@48870 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 01:06:01 +00:00
Sergey Biryukov
efc5c63254 Editor: Remove some hardcoded text color values from patterns that have body text with no specific background color.
This ensures that the patterns respect the theme's default color for body text and avoids contrast issues, particularly in dark themes.

Props nrqsnchz, mapk, fullofcaffeine.
Fixes #50892.

git-svn-id: https://develop.svn.wordpress.org/trunk@48864 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-26 13:32:05 +00:00
Sergey Biryukov
04d555e91d Editor: Make some hardcoded strings in block patterns translatable.
Follow-up to [48726].

Props justinahinon, audrasjb, nabilmoqbel, tobifjellner, yoavf, ramiy.
Fixes #50845.

git-svn-id: https://develop.svn.wordpress.org/trunk@48859 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-25 12:38:21 +00:00
Sergey Biryukov
25c9718a1e Bootstrap/Load: Add local environment type to wp_get_environment_type().
This gives developers a better control over their existing development workflow and ensures that `local` is not the exact same as `development` if it does not need to be.

Props claytoncollie, johnbillion, jeremyfelt, kreppar, dushakov, TimothyBlynJacobs, Ipstenu, khag7, knutsp, Clorith, markjaquith, joostdevalk, SergeyBiryukov.
Fixes #51064.

git-svn-id: https://develop.svn.wordpress.org/trunk@48856 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-24 22:30:36 +00:00
Sergey Biryukov
8e7e3c5b72 Docs: Improve documentation for wp_lazy_loading_enabled() per the documentation standards.
See #50768.

git-svn-id: https://develop.svn.wordpress.org/trunk@48855 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-24 22:14:17 +00:00
Sergey Biryukov
4869de2a1c Docs: Add a @since note about the $srcset and $sizes attributes added to wp_get_attachment_image().
Follow-up to [34855].

See #51122.

git-svn-id: https://develop.svn.wordpress.org/trunk@48853 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-24 22:10:25 +00:00
Sergey Biryukov
62260b9fbf Docs: Add documentation and a @since note about the loading attribute added to wp_get_attachment_image().
Follow-up to [48272].

Props audrasjb.
Fixes #51122.

git-svn-id: https://develop.svn.wordpress.org/trunk@48852 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-24 22:02:44 +00:00
Sergey Biryukov
380145e073 Docs: Update the description for the $legacy parameter of wp_count_terms() for consistency with get_terms().
Follow-up to [48840].

See #36399.

git-svn-id: https://develop.svn.wordpress.org/trunk@48843 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-23 00:06:04 +00:00
Sergey Biryukov
153d07b93a REST API: In WP_REST_Block_Directory_Controller::get_items(), make sure the blocks data for a plugin is not empty before proceeding.
This avoids a PHP notice if the API returns a plugin with empty data for `blocks` key.

Props khag7, TwentyZeroTwo, justinahinon, TimothyBlynJacobs, dd32, SergeyBiryukov.
Fixes #51018.

git-svn-id: https://develop.svn.wordpress.org/trunk@48842 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-22 01:52:42 +00:00
Felix Arntz
0228dd6a5d Taxonomy: Allow for wp_count_terms( $args ) signature, making passing a taxonomy optional.
This brings `wp_count_terms()` in line with other taxonomy functions such as `get_terms()` which technically no longer require a taxonomy. Similar to the previously modified functions, no deprecation warning is triggered when using the legacy signature.

Fixes #36399.


git-svn-id: https://develop.svn.wordpress.org/trunk@48840 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-21 22:30:06 +00:00
Sergey Biryukov
3b1d1bfa7a Code Modernization: Fix PHP 8 "ArgumentCountError: array_merge() does not accept unknown named parameters" fatal error in retrieve_widgets().
As per the documentation of `call_user_func_array()`, the `$param_arr` should be a (numerically) indexed array, not a string-keyed array.

As we can use the spread operator in PHP 5.6+, there isn't really any need to use `call_user_func_array()` anyhow, we can call the `array_merge()` function directly.

The caveat to this is that the spread operator only works on numerically indexed arrays, so we need to wrap the `$sidebars_widgets` variable in a call to `array_values()` when using the spread operator.

Using `array_values()` in the existing `call_user_func_array()` call would also have solved this, but the solution now proposed, has the added benefit of getting rid of the overhead of `call_user_func_array()`.

Props jrf.
See #50913.

git-svn-id: https://develop.svn.wordpress.org/trunk@48839 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-21 21:49:02 +00:00
Sergey Biryukov
29bfc56ca2 Code Modernization: Fix PHP 8 "argument must be passed by reference, value given" error in WP_Comment_Query::get_comments().
The WP native `get_comment()` function expects the first argument `$comment` to be passed by reference.

The PHP `array_map()` function, however, passes by value, not by reference, resulting in an "arguments must be passed by reference, value given" error.

The PHP native `array_walk()` function does pass by reference. Using this prevents the error on PHP 8 and maintains the existing behaviour on PHP < 8.

Props jrf.
See #50913.

git-svn-id: https://develop.svn.wordpress.org/trunk@48838 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-21 21:32:49 +00:00
Sergey Biryukov
5ad8969179 Customize: Add / character to <img> tag in WP_Customize_Manager and WP_Customize_Header_Image_Control JS templates.
While this has no effect on void elements in HTML5, it fixes a minor inconsistency with the rest of core.

Props laxman-prajapati.
Fixes #51077.

git-svn-id: https://develop.svn.wordpress.org/trunk@48834 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-20 13:11:36 +00:00
Sergey Biryukov
1b78e495b2 Docs: Update documentation for get_custom_logo() and the_custom_logo() to mention the unlink-homepage-logo theme feature.
Follow-up to [48039], [48283], [48749], [48757], [48758].

Props sabernhardt.
Fixes #51075.

git-svn-id: https://develop.svn.wordpress.org/trunk@48832 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-20 10:39:12 +00:00
Jonathan Desrosiers
de70dabf63 Editor: Update the post type labels for the reusable blocks post type.
Previously, the labels for the reusable block post type were just “block”. The document settings tab in the block editor has been changed to use the post type label specified instead to be more specific. Changing the reusable block post type labels to “reusable block” prevents two “Block” tabs from showing in the editor.

Props desaiuditd, peterwilsoncc.
Fixes #50755.

git-svn-id: https://develop.svn.wordpress.org/trunk@48829 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-19 13:38:56 +00:00
Sergey Biryukov
ab12557628 Docs: Add a @since note to register_rest_route() about the _doing_it_wrong() notice when the required permission_callback argument is not set.
Follow-up to [48526].

Props psykro.
Fixes #51060.

git-svn-id: https://develop.svn.wordpress.org/trunk@48827 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-19 12:29:34 +00:00
Sergey Biryukov
de73a6a8e9 Docs: Improve description for WP_Admin_Bar::add_group().
Props stevenlinx.
Fixes #50779.

git-svn-id: https://develop.svn.wordpress.org/trunk@48826 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-19 02:44:38 +00:00
Sergey Biryukov
27a2494ebe Comments: Correct punctuation in "Your comment is awaiting moderation" string in Walker_Comment.
Props llizard.
See #49867.

git-svn-id: https://develop.svn.wordpress.org/trunk@48824 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-19 02:25:13 +00:00
Sergey Biryukov
5f861293e6 Comments: Make sure the comment data passed to the preprocess_comment filter includes the comment_agent and comment_author_IP values.
Props zodiac1978, SergeyBiryukov.
Fixes #51044.

git-svn-id: https://develop.svn.wordpress.org/trunk@48822 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-19 01:55:12 +00:00
Sergey Biryukov
76c599ced2 Formatting: Make the check for empty text in wp_trim_excerpt() more resilient.
This addresses a regression in [47808], which caused excerpts to be generated from post content if an empty string is passed, but not for other values considered empty, e.g. `null` or `false`.

Props riaanlom, laxman-prajapati, SergeyBiryukov.
Fixes #51042.

git-svn-id: https://develop.svn.wordpress.org/trunk@48817 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-18 15:08:19 +00:00
Sergey Biryukov
1911eae4a1 Docs: Correct alignment for some DocBlocks in WP_Query::get_posts().
See #50768.

git-svn-id: https://develop.svn.wordpress.org/trunk@48816 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-18 12:37:39 +00:00
Sergey Biryukov
89ea6ce552 Docs: Add a @since note to get_the_archive_title() about the title part being wrapped in a <span> element.
Follow-up to [48294].

Props justinahinon, audrasjb.
Fixes #51050.

git-svn-id: https://develop.svn.wordpress.org/trunk@48814 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-18 12:03:24 +00:00
Sergey Biryukov
7d0dc26c96 Accessibility: Toolbar: Don't output the "Skip to toolbar" link in modern themes that support the wp_body_open action.
The links is unnecessary there, as the toolbar is the first thing in the DOM within the `<body>` element.

For themes that don't implement the `wp_body_open` action yet and render the admin bar in the footer, the "Skip to toolbar" link with `tabindex="1"` is still necessary, to ensure it's the first focusable element in the page.

Props sarahricker, afercia, erikjandelange, audrasjb.
Fixes #50702.

git-svn-id: https://develop.svn.wordpress.org/trunk@48812 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-17 14:24:30 +00:00
Sergey Biryukov
cbaa88cb5a Code Modernization: Introduce is_gd_image() to check for PHP 8 GdImage object instances.
In PHP 8, the GD extension uses `GdImage` objects instead of resources for its underlying data structures.

This updates the existing `is_resource()` calls for image resources in core to accomodate for `GdImage` instances as well.

Props ayeshrajans, jrf.
Fixes #50833.

git-svn-id: https://develop.svn.wordpress.org/trunk@48798 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-16 13:31:57 +00:00
Timothy Jacobs
dddddc47f4 REST API: Add uniqueItems as a permitted endpoint argument JSON Schema keyword.
Support for the `uniqueItems` keyword was added in [48357], but wasn't included in the list of permitted keywords for `WP_REST_Controller::get_endpoint_args_for_item_schema()`. This prevented the keyword from being automatically supported if specified in a controller's item schema.

Fixes #51021.


git-svn-id: https://develop.svn.wordpress.org/trunk@48796 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-15 16:09:56 +00:00
Sergey Biryukov
dd071ee278 Menus: Make the $object_id parameter of _wp_delete_post_menu_item() required, for consistency with _wp_delete_tax_menu_item().
The function is private (only intended for core usage) and is hooked to the `delete_post` action, which always passes a non-zero post ID.

Follow-up to [14295], [48794].

See #50343.

git-svn-id: https://develop.svn.wordpress.org/trunk@48795 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-15 13:44:00 +00:00
Sergey Biryukov
9c220ffaf7 Code Modernization: Fix PHP 8 deprecation notices for optional function parameters declared before required parameters.
As it already was not possible to pass the required parameters without also passing the optional one anyway, removing the default value for the (not so) optional parameters should not affect backward compatibility.

This change affects three functions in core:

* `get_comment_delimited_block_content()`
* `do_enclose()`
* `_wp_delete_tax_menu_item()`

Props jrf, ayeshrajans, desrosj.
Fixes #50343.

git-svn-id: https://develop.svn.wordpress.org/trunk@48794 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-15 13:38:52 +00:00
Sergey Biryukov
b9e5fa1077 Docs: Document the parameters of wp_get_associated_nav_menu_items() as optional.
See #50768.

git-svn-id: https://develop.svn.wordpress.org/trunk@48793 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-15 13:10:15 +00:00
Sergey Biryukov
ab9aee8af4 Code Modernization: Only call libxml_disable_entity_loader() in PHP < 8.
This function has been deprecated in PHP 8.0 because in libxml 2.9.0, external entity loading is disabled by default, so this function is no longer needed to protect against XXE attacks.

Props jrf.
Fixes #50898.

git-svn-id: https://develop.svn.wordpress.org/trunk@48789 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-12 15:23:47 +00:00
Sergey Biryukov
1bf0a780b3 Code Modernization: Remove final keyword from private methods.
Declaring a `private` method as `final` is an oxymoron, as `private` methods cannot be overloaded anyway.

Using `final private function...` will generate a warning in PHP 8.

Props jrf.
Fixes #50897.

git-svn-id: https://develop.svn.wordpress.org/trunk@48788 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-12 15:03:50 +00:00
Sergey Biryukov
a84a5029be Docs: Consistently use third-person singular verbs for various filter descriptions, per the documentation standards.
See #50768.

git-svn-id: https://develop.svn.wordpress.org/trunk@48782 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-11 00:32:22 +00:00
Sergey Biryukov
635ae16e85 Docs: Update documentation for get_{$meta_type}_metadata filter for consistency with default_{$meta_type}_metadata.
Follow-up to [48777].

See #50891.

git-svn-id: https://develop.svn.wordpress.org/trunk@48778 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-10 15:48:25 +00:00
Jake Spurlock
d434a22552 Options, Meta APIs: Update the docs around default metadata values.
Add a missing @since value for 5.5 and potential default filter names.

Fixes #50891.
Props johnbillion.



git-svn-id: https://develop.svn.wordpress.org/trunk@48777 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-10 15:40:18 +00:00
Ella van Durpe
ab5fb855f3 Editor: update packages
Fixes #50888


git-svn-id: https://develop.svn.wordpress.org/trunk@48772 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-10 14:16:11 +00:00
Sergey Biryukov
82104fac79 I18N: Add a class_exists() check to Plural_Forms class for consistency with other POMO library classes.
Follow-up to [41722].

Fixes #50881.

git-svn-id: https://develop.svn.wordpress.org/trunk@48769 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-10 11:32:01 +00:00
Sergey Biryukov
e0ad73b0a0 I18N: Fix typo in a string in rest_validate_value_from_schema().
Props pedromendonca.
Fixes #50879.

git-svn-id: https://develop.svn.wordpress.org/trunk@48767 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-09 01:58:31 +00:00
Sergey Biryukov
f09aab7232 Coding Standards: Use consistent formatting for translator comments in wp-includes/rest-api.php.
See #50767.

git-svn-id: https://develop.svn.wordpress.org/trunk@48765 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-09 01:44:29 +00:00
Sergey Biryukov
a5771dc74b Themes: Add unlink-homepage-logo to the create_initial_theme_features() registration for the custom-logo theme feature.
Follow-up to [48039], [48283], [48749].

Props TimothyBlynJacobs.
Fixes #37011.

git-svn-id: https://develop.svn.wordpress.org/trunk@48757 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-07 19:41:16 +00:00
Andrew Ozz
5868743f1f Script Loader: Remove the jquery-migrate-compat-5.5 temporary script handle for now. Can be re-added later if there is a compelling use case. For now it doesn't seem necessary.
See #37110.

git-svn-id: https://develop.svn.wordpress.org/trunk@48754 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-07 18:28:36 +00:00