Compare commits

...

128 Commits

Author SHA1 Message Date
Sergey Biryukov 69d6206926 Tag 5.5.3
git-svn-id: https://develop.svn.wordpress.org/tags/5.5.3@49463 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-30 20:37:00 +00:00
Sergey Biryukov fd0927688a WordPress 5.5.3.
Props audrasjb.
Fixes #51684.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49458 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-30 19:30:38 +00:00
Jake Spurlock c9f38db45b Upgrade/Install: During the install process, add additional checking for exising tables.
This commit brings the changes in [49452] to the 5.5 branch.

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/branches/5.5@49453 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-30 17:54:48 +00:00
Sergey Biryukov 902584148e Post WordPress 5.5.2 version bump. The 5.5 branch is now 5.5.3 alpha.
git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49449 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 20:54:11 +00:00
Jonathan Desrosiers 9ff2f12519 WordPress 5.5.2.
Props audrasjb.
Fixes #51649.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49447 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 20:00:58 +00:00
Robert Anderson 126da5c874 Editor: Update packages
@wordpress/block-directory: 1.13.8 -> 1.13.9
@wordpress/block-editor: 4.3.8 -> 4.3.9
@wordpress/block-library: 2.22.8 -> 2.22.9
@wordpress/edit-post: 3.21.8 -> 3.21.9
@wordpress/edit-site: 1.11.8 -> 1.11.9
@wordpress/editor: 9.20.8 -> 9.20.9
@wordpress/format-library: 1.22.8 -> 1.22.9

See #51659.


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49446 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 19:58:12 +00:00
Jake Spurlock 0b0669ade2 XML-RPC: Improve error messages for unprivileged users.
Add specific permission checks to avoid ambiguous failure messages.

This brings the changes in [49380] to the 5.5 branch.

Props zieladam, peterwilsoncc, xknown, whyisjake.


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49389 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 18:26:20 +00:00
Jake Spurlock 7d5bf1c3f8 Coding Standards: Use a strict comparison operator when comparing values.
Props batmoo, mukesh27.


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49381 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 17:44:59 +00:00
Jake Spurlock 69e8323982 Themes: Ensure that only privileged users can set a background image when a theme is using the deprecated custom background page.
Props xknown, zieladam, peterwilsoncc, whyisjake


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49379 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 17:33:43 +00:00
Jake Spurlock 9ece9cf045 Meta: Sanitize meta key before checking protection status.
Props zieladam, peterwilsoncc, xknown, whyisjake.



git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49378 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 17:31:40 +00:00
Jake Spurlock 59414965b5 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.


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49377 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 17:24:33 +00:00
Jake Spurlock 2d677cd4b2 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.
See #49905.


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49376 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 16:57:43 +00:00
Jake Spurlock 002f56a3da Coding standards: Modify escaping functions to avoid potential false positives.
Props xknown, zieladam, peterwilsoncc.Y



git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49375 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 16:56:34 +00:00
Jake Spurlock e2142c20be Embeds: Disable embeds on deactivated Multisite sites.
Props xknown, whyisjake, zieladam, peterwilsoncc.


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49374 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 16:52:48 +00:00
Jake Spurlock f854286f9c External Libraries: Disable deserialization in Requests_Utility_FilteredIterator
Props xknown, peterwilsoncc, desrosj, dd32, whyisjake.



git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49373 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 16:36:19 +00:00
Robert Anderson 59168bc0e2 Editor: Update packages
@wordpress/block-directory: 1.13.7 -> 1.13.8
@wordpress/block-editor: 4.3.7 -> 4.3.8
@wordpress/block-library: 2.22.7 -> 2.22.8
@wordpress/blocks: 6.20.3 -> 6.20.4
@wordpress/components: 10.0.6 -> 10.0.7
@wordpress/core-data: 2.20.3 -> 2.20.4
@wordpress/edit-post: 3.21.7 -> 3.21.8
@wordpress/editor: 9.20.7 -> 9.20.8
@wordpress/format-library: 1.22.7 -> 1.22.8
@wordpress/icons: 2.4.0 -> 2.4.1
@wordpress/list-reusable-blocks: 1.21.6 -> 1.21.7
@wordpress/nux: 3.20.6 -> 3.20.7
@wordpress/plugins: 2.20.3 -> 2.20.4
@wordpress/server-side-render: 1.16.6 -> 1.16.7

Props talldanwp.
See #51659, #51053, #50949.


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49372 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-29 06:11:57 +00:00
Jonathan Desrosiers 61b04b99e1 Build/Test Tools: Allow the desired version of PHPUnit to be passed to the local Docker environment.
This introduces the `LOCAL_PHPUNIT` environment variable, which allows the desired version of PHPUnit to be specified when running the PHP tests within the local Docker environment.

Because support for newer versions of PHPUnit is not backported, some versions of PHP need the ability to run multiple versions of PHPUnit for different branches. This adds the flexibility needed to use the Docker environment within those older branches to run the PHP tests.

Props johnbillion, SergeyBiryukov.
Merges [49362] to the 5.5 branch.
See #50042.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49363 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-28 23:32:16 +00:00
Jake Spurlock 6828266965 Embeds: Remove Facebook and Instagram as an oEmbed Source
Facebook has depracated all non-authenticated endpoints for Facebook and Instagram.

This commit brings the changes from [49359] to the 5.5 branch.

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/branches/5.5@49361 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-28 21:21:37 +00:00
Sergey Biryukov 24dea5b0d5 General: Ensure that filtered arguments in `get_search_form()` contain all required default values.
Props kellybleck, davidbaumwald, whyisjake, SergeyBiryukov.
Merges [49355] to the 5.5 branch.
Fixes #51645.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49356 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-28 17:07:18 +00:00
Jonathan Desrosiers 729a6af8ee Build/Test Tools: Specify a type when using `wp config set`.
This prevents an error if constants are not predefined when running the Docker install script while using older combinations of WordPress/PHP/WP-CLI.

Backports [49335] to the 5.5 branch.
See #48301.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49340 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-27 19:01:53 +00:00
Jonathan Desrosiers b92337f04d Build/Test Tools: Set the local development environment to a local environment type by default.
Props igorradovanov, TimothyBlynJacobs, johnbillion.
Merges [49121] to the 5.5 branch.
See #50903.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49339 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-27 18:58:02 +00:00
Sergey Biryukov 7ba72fec4c 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.
Merges [49328] to the 5.5 branch.
Fixes #51320.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49332 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-27 17:54:43 +00:00
Sergey Biryukov 2f6e70f6d8 Build Tools: Update mergeinfo for [49313].
See #51624.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49315 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-26 22:56:06 +00:00
Sergey Biryukov 94feb3d0da Build Tools: Fix running installing Composer dependencies using Composer 2.0.
This updates the `dealerdirect/phpcodesniffer-composer-installer` package to allow installing version `0.7.0` which supports Composer 2.0.

Props itowhid06, jrf.
Merges [49306] to the 5.5 branch.
See #51624.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49313 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-26 22:46:00 +00:00
Sergey Biryukov cdd98893d7 Tests: Declare UTF-8 encoding for QUnit test suite.
This was done for trunk in [49101] as part of other changes, and is now backported to the 5.5 branch.

Follow-up to [49275].

Props iandunn, SergeyBiryukov.
Fixes #51130.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49307 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-25 01:29:32 +00:00
Tellyworth c8683c8412 Community Events: Display dates and times in the user's time zone.
Fixes #51130
Merges [49145], [49146], [49147], [49152], and [49201] to the 5.5 branch.
Props sippis, hlashbrooke, audrasjb, Rarst, iandunn


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49275 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-22 04:03:25 +00:00
Peter Wilson 81b8d747d2 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].
Merges [49271] to the 5.5 branch.
Fixes #51595.



git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49273 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-22 02:45:47 +00:00
Sergey Biryukov 97ebbdab72 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.
Merges [49187] to the 5.5 branch.
Fixes #51175.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49191 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-18 17:09:46 +00:00
Sergey Biryukov 042bfaed29 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.
Merges [49166] to the 5.5 branch.
Fixes #51400.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49167 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-15 23:29:17 +00:00
Sergey Biryukov 8a8346a4ca Bootstrap/Load: Revert [49161] from the 5.5 branch.
See #50913.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49164 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-15 21:17:08 +00:00
Aaron Jorbin 2d12c86d82 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 PHP8 error.

See: #50913.



git-svn-id: https://develop.svn.wordpress.org/branches/5.5@49161 602fd350-edb4-49c9-b593-d223f7449a82
2020-10-15 17:05:48 +00:00
Sergey Biryukov c87e26396b Comments: Check if a valid comment ID was passed when editing a comment.
This avoids a PHP notice after submitting the Edit Comment form.

Follow-up to [48050].

Props regan.khadgi.
Merges [48958] to the 5.5 branch.
Fixes #51263.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48959 602fd350-edb4-49c9-b593-d223f7449a82
2020-09-08 22:44:56 +00:00
Sergey Biryukov 54d13789fe Media: In `wp_ajax_image_editor()`, check if the `error` property exists before accessing it.
This avoids a PHP notice when editing an image.

Follow-up to [48375].

Props Mista-Flo.
Merges [48946] to the 5.5 branch.
Fixes #51251.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48956 602fd350-edb4-49c9-b593-d223f7449a82
2020-09-07 13:05:15 +00:00
Sergey Biryukov b3e77f3bbd Administration: Give the `$error` variable in `wp-admin/admin-header.php` a more descriptive name.
This avoids a conflict with the same global variable used elsewhere, e.g. in Theme Editor.

Follow-up to [48850].

Props vinayak.anivase.
Merges [48938] to the 5.5 branch.
Fixes #51219.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48955 602fd350-edb4-49c9-b593-d223f7449a82
2020-09-07 13:03:42 +00:00
Jonathan Desrosiers 10a0ec4651 Post WordPress 5.5.1 version bump. The 5.5 branch is now 5.5.2 alpha.
git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48936 602fd350-edb4-49c9-b593-d223f7449a82
2020-09-01 19:20:53 +00:00
Jonathan Desrosiers 19379b2a09 WordPress 5.5.1.
git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48934 602fd350-edb4-49c9-b593-d223f7449a82
2020-09-01 18:50:39 +00:00
Sergey Biryukov 71e0a285f9 Help/About: Update the About page for 5.5.1.
Props audrasjb, desrosj, SergeyBiryukov.
Fixes #51202.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48933 602fd350-edb4-49c9-b593-d223f7449a82
2020-09-01 17:42:19 +00:00
Sergey Biryukov 1638c5cb9d Help/About: Fix typo and remove trailing spaces from some strings.
Props mukesh27, casiepa, davidbaumwald.
Merges [48809] to the 5.5 branch.
Fixes #51028.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48932 602fd350-edb4-49c9-b593-d223f7449a82
2020-09-01 17:22:08 +00:00
Jonathan Desrosiers f71ed0c88d Post WordPress 5.5.1 RC2 version bump.
git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48928 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-31 23:45:24 +00:00
Jonathan Desrosiers b25343788c WordPress 5.5.1 RC2.
git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48927 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-31 23:27:24 +00:00
Jonathan Desrosiers ffb0bf91fa Tests: Move the tests for `get_the_modified_time()` to a more appropriate place.
Add some new tests to better cover the functionality, for consistency with `get_the_date()` and `get_the_time()`.

Follow-up to [48911], [48912], [48918].

Props wittich.
Merges [48924] to the 5.5 branch.
Fixes #51184.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48926 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-31 22:49:18 +00:00
Jonathan Desrosiers 175bb78df9 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.
Merges [48923] to the 5.5 branch.
Fixes #51123.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48925 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-31 22:41:11 +00:00
Jonathan Desrosiers 05473e0fd0 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.
Merges [48918] to the 5.5 branch.
See #51184.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48922 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-31 18:58:04 +00:00
Jonathan Desrosiers 01c896073d 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.
Merges [48912] to the 5.5 branch.
Fixes #51184.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48921 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-31 18:56:22 +00:00
Jonathan Desrosiers 0318feb679 Tests: Bring some consistency to Date/Time tests:
- Move some tests from `post.php` to a more appropriate location in the `date` directory.
- Rename `date/postTime.php` to `date/getPostTime.php` to match the function name. 

Props Rarst.
Merges [48911] to the 5.5 branch.
See #51184.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48920 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-31 18:53:52 +00:00
Jonathan Desrosiers 5e7d0e50bf Themes: Normalize the installed theme path in `Theme_Installer_Skin::do_overwrite()` before comparing with the uploaded theme.
This ensures that the data for the currently installed theme is picked up properly when uploading a theme update on Windows.

Follow-up to [48390].

Props bobbingwide, wpamitkumar, mukesh27.
Merges [48913] to the 5.5 branch.
Fixes #51182.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48919 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-31 18:28:54 +00:00
Jonathan Desrosiers d5e894c20c Comments: Check if reply heading text node exists before accessing its property in `comment-reply.js`.
Follow-up to [47506], [48876].

Props johannadevos, mailnew2ster.
Merges [48904] to the 5.5 branch.
Fixes #38009.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48917 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-31 18:12:11 +00:00
Jonathan Desrosiers 56fef3742a Docs: Clarify the usage of `null` for `auto_update_{$type}` filter.
The value is internally used to detect whether nothing has hooked into this filter.

Props audrasjb, pbiron, johnbillion, SergeyBiryukov.
Merges [48909] to the 5.5 branch.
Fixes #50848.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48916 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-31 18:00:12 +00:00
Jonathan Desrosiers 58d649aa51 Docs: Add a `@since` note to the `display_post_states` filter to clarify that it is now also applied in the Customizer context.
If any admin functions are used within the filter, their existence should be checked with `function_exists()` before being used.

Follow-up to [47763], [48620].

Props audrasjb, garrett-eclipse, Howdy_McGee, dlh, khag7, SergeyBiryukov.
Merges [48910] to the 5.5 branch.
Fixes #51081.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48915 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-31 17:55:24 +00:00
Jonathan Desrosiers 28022ebac7 Tests: Reset the `$wp_sitemap` global after each test, so that sitemaps are re-initialized when the next test runs.
This ensures consistent results in query var tests, regardless of whether they are run in isolation or as part of a larger group of tests.

Props pbiron, peterwilsoncc.
Merges [48908] to the 5.5 branch.
Fixes #51154.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48914 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-31 17:51:23 +00:00
Jonathan Desrosiers 06b142aa62 Post WordPress 5.5.1 RC1 version bump.
git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48902 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 23:22:10 +00:00
Jonathan Desrosiers bff2404fd2 WordPress 5.5.1 RC1.
git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48901 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 23:04:57 +00:00
Sergey Biryukov adda1360aa Upgrade/Install: Only display the auto-update links on the Network Admin > Themes screen for themes that support the feature.
Follow-up to [48669], [48688].

Props afragen, pbiron, audrasjb, desrosj, SergeyBiryukov.
Merges [48899] to the 5.5 branch.
Fixes #51129.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48900 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 22:23:53 +00:00
Sergey Biryukov bf21b6507b 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.
Merges [48897] to the 5.5 branch.
Fixes #50999.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48898 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 21:59:17 +00:00
Sergey Biryukov d60dc322f3 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.
Merges [48894] and [48895] to the 5.5 branch.
Fixes #50992.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48896 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 21:44:10 +00:00
Sergey Biryukov b16bfc45f6 Tests: Update `wp_add_inline_script()` unit tests to account for the `jquery` handle being an alias for `jquery-core` again.
Follow-up to [48323], [48324], [48890].

Props davidbaumwald, audrasjb.
Merges [48892] to the 5.5 branch.
See #50919.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48893 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 21:06:13 +00:00
Sergey Biryukov 52cef7aeec 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.
Merges [48890] to the 5.5 branch.
Fixes #50919.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48891 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 20:34:18 +00:00
Jonathan Desrosiers db992211f2 Upgrade/Install: Pass details about the specific plugin and theme updates attempted to filters.
This adds an additional parameter to the `auto_plugin_update_send_email` and `auto_theme_update_send_email` filters to provide the additional context of which updates were attempted and their outcome. This will help plugin and theme auto-update emails to be better tailored to a site owner's liking.

Props audrasjb, Paddy Landau, desrosj.
Merges [48888] to the 5.5 branch.
Fixes #50988.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48889 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 19:32:31 +00:00
Jonathan Desrosiers bb6615aa8a Build/Test Tools: Update the package lock file.
Follow up to [48884].

Merges [48886] to the 5.5 branch.
See #51151.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48887 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 19:05:55 +00:00
Jorge Costa 0c1b1e132a 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.
Merges [48884] to the 5.5 branch.
Fixes: #51151.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48885 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 17:58:02 +00:00
Sergey Biryukov 61b9a7fd6e 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, TimothyBlynJacobs.
Merges [48881] to the 5.5 branch.
Fixes #51146.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48883 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 14:43:40 +00:00
Sergey Biryukov d67396c24b Taxonomy: Make sure `wp_terms_checklist()` and `Walker_Category_Checklist::start_el()` properly handle an array of strings as `selected_cats` or `popular_cats` values.
Even with these values documented as an array of integers, they can technically also accept an array of strings, e.g. as form results.

Add a unit test.

Props brianhogg, TimothyBlynJacobs, SergeyBiryukov.
Merges [48880] to the 5.5 branch.
Fixes #51137.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48882 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 03:06:22 +00:00
Sergey Biryukov 1699ff7f13 Tests: Update one more test to account for lazy-loading being disabled for custom logos by default.
Follow-up to [48870], [48874].

Props desrosj.
Merges [48878] to the 5.5 branch.
See #50933.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48879 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 02:03:23 +00:00
Sergey Biryukov cac33d2984 Comments: Correct the check for reply element existence in `comment-reply.js`.
`document.getElementById()` returns `null` if no matching element was found, so the previous comparison didn't work as expected.

Follow-up to [47506].

Props mailnew2ster, sarahricker.
Merges [48876] to the 5.5 branch.
Fixes #38009.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48877 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 01:59:29 +00:00
Sergey Biryukov 8cab089517 Tests: Update unit tests to account for lazy-loading being disabled for custom logos by default.
Follow-up to [48870].

Merges [48874] to the 5.5 branch.
See #50933.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48875 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 01:56:05 +00:00
Peter Wilson 686262686d 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.
Merges [48872] to the 5.5 branch.
Fixes #50910.



git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48873 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 01:35:31 +00:00
Jonathan Desrosiers f14250e2a7 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.
Merges [48870] to the 5.5 branch.
Fixes #50933.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48871 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-27 01:08:23 +00:00
Sergey Biryukov 4636ab5143 Upgrade/Install: Make the check for empty `home` option in `__get_option()` more resilient.
This addresses a regression in [47808], where the `home` check expected an empty string to use `siteurl` as a fallback, but `wpdb::get_var()` returns `null` if the option is empty.

Props fjarrett.
Merges [48868] to the 5.5 branch.
Fixes #51011.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48869 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-26 17:05:54 +00:00
Sergey Biryukov 1a982564f1 Quick/Bulk Edit: Revert [48134] to address the bottom "Bulk actions" dropdown not functioning properly on Posts and Users list tables.
A better solution for the original issue will be explored in a future release.

Props audrasjb, garrett-eclipse, webzunft, Krstarica, chunkysteveo, SergeyBiryukov.
Merges [48866] to the 5.5 branch.
Fixes #50882, #50998. See #46872.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48867 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-26 14:19:01 +00:00
Sergey Biryukov 61f45b5db6 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.
Merges [48864] to the 5.5 branch.
Fixes #50892.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48865 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-26 13:34:32 +00:00
Sergey Biryukov 09cf17d0b7 Administration: Remove non-color related styling from Modern color scheme.
Color schemes should only affect colors, to avoid diverging from a consistent and predictable layout, especially if core CSS rules subsequently change.

Follow-up to [48277], [48286], [48345].

Props Joen, johnbillion, afercia, johnjamesjacoby.
Merges [48862] to the 5.5 branch.
Fixes #51127. See #50504.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48863 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-26 13:19:09 +00:00
Sergey Biryukov 6f51272e51 Editor: Make some hardcoded strings in block patterns translatable.
Follow-up to [48726].

Props justinahinon, audrasjb, nabilmoqbel, tobifjellner, yoavf, ramiy.
Merges [48859] to the 5.5 branch.
Fixes #50845.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48860 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-25 12:40:21 +00:00
Sergey Biryukov 0dd560ac3f 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.
Merges [48856] to the 5.5 branch.
Fixes #51064.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48857 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-24 22:32:20 +00:00
Sergey Biryukov ae49fc0a3b Docs: Add documentation and a `@since` note about the `loading` attribute added to `wp_get_attachment_image()`.
Follow-up to [48272].

Props audrasjb.
Merges [48852] and [48853] to the 5.5 branch.
Fixes #51122.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48854 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-24 22:12:06 +00:00
Sergey Biryukov e393d41e3c Administration: Don't print the `.php-error` class in the admin header for PHP notices in `wp-config.php`.
Any notices in that file happen before `WP_DEBUG` takes effect, and should not be displayed with the `error_reporting` level previously set in `wp-load.php`.

Adding the class when there is no notice displayed results in extra padding under the admin bar, which should be avoided.

Follow-up to [20102], [21025], [26620], [47745].

Props akissz, tw2113, laxman-prajapati, sabernhardt, johnbillion, SergeyBiryukov.
Merges [48850] to the 5.5 branch.
Fixes #51073.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48851 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-24 10:48:24 +00:00
Sergey Biryukov 4ad67eb3c2 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.
Merges [48842] to the 5.5 branch.
Fixes #51018.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48849 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-24 10:33:09 +00:00
Sergey Biryukov 4e7ac9bb9f 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.
Merges [48832] to the 5.5 branch.
Fixes #51075.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48833 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-20 10:40:40 +00:00
Sergey Biryukov acc404eaf8 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.
Merges [48827] to the 5.5 branch.
Fixes #51060.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48828 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-19 12:31:23 +00:00
Sergey Biryukov 5b338a892f Plugins: Avoid a PHP notice if the `update-supported` key in plugin data is not set.
Props sanzeeb3.
Merges [48820] to the 5.5 branch.
Fixes #51052.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48821 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-18 20:38:21 +00:00
Sergey Biryukov ba58ceefa4 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.
Merges [48817] to the 5.5 branch.
Fixes #51042.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48819 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-18 19:35:30 +00:00
Sergey Biryukov a8f733a239 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.
Merges [48814] to the 5.5 branch.
Fixes #51050.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48815 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-18 12:05:13 +00:00
Sergey Biryukov e35a4f0170 Help/About: Revert [48811] from the 5.5 branch for now, to avoid displaying untranslated strings on the About page.
This should be merged back when 5.5.1 is about to be released.

See #51028.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48813 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-18 03:00:58 +00:00
Sergey Biryukov 1006cd9c2c Help/About: Fix typo and remove trailing spaces from some strings.
Props mukesh27, casiepa, davidbaumwald.
Merges [48809] to the 5.5 branch.
Fixes #51028.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48811 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-17 10:57:37 +00:00
Sergey Biryukov fe47413a65 Site Health: Ensure that the tests returned by `WP_Site_Health::get_tests()` always have the required array keys: `direct` and `async`.
This avoids PHP notices if these keys were accidentally removed using the `site_status_tests` filter.

Props khag7, Ov3rfly, desrosj, Clorith.
Merges [48808] to the 5.5 branch.
Fixes #50858.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48810 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-17 02:21:17 +00:00
Sergey Biryukov 3212a7dffb 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.

Props TimothyBlynJacobs.
Merges [48796] to the 5.5 branch.
Fixes #51021.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48807 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-17 01:40:59 +00:00
Sergey Biryukov 267960fc5d Site Health: Only display the warning about the `post_max_size` PHP value when it's lower than `upload_max_filesize`.
Previously, the warning was displayed even if the value was higher than `upload_max_filesize`, which made the report inaccurate, as these values don't necessarily have to match.

Props oakesjosh, jeroenrotty, desrosj, Clorith.
Merges [48800] and [48801] to the 5.5 branch.
Fixes #50945.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48806 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-17 01:27:29 +00:00
Sergey Biryukov 6ee7a4f5c8 Site Health: Add site environment type to the debug information.
Follow-up to [47919], [48188], [48372].

Props joostdevalk, Clorith.
Merges [48802] to the 5.5 branch.
Fixes #50887.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48805 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-17 01:23:58 +00:00
Sergey Biryukov 9e0800ebe9 Site Health: Recognize `define( 'WP_AUTO_UPDATE_CORE', 'minor' )` as an acceptable value.
Previously, it was only incidentally recognized as valid due to a loose comparison with `true`.

With the strict comparison added to `WP_Site_Health_Auto_Updates::test_constants()`, this was no longer the case.

Follow-up to [47841].

Props sterndata, mukesh27, avixansa, desrosj, SergeyBiryukov.
Merges [48792] to the 5.5 branch.
Fixes #50912.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48804 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-17 01:02:38 +00:00
Sergey Biryukov 6b6be351ef Filesystem API: Use correct variable when closing the file handle in `WP_Filesystem_FTPext::get_contents()`.
Props gothick@gothick.org.uk.
Merges [48797] to the 5.5 branch.
Fixes #51029.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48803 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-17 00:55:28 +00:00
Sergey Biryukov aabef3109e Post WordPress 5.5 version bump.
git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48787 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-11 19:33:39 +00:00
Jake Spurlock 70fcbf67df WordPress 5.5
git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48785 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-11 18:12:27 +00:00
Jonathan Desrosiers b591209e14 Help/About: Final adjustments to the 5.5 About page.
- Final CDN asset URLs.
- Some minor color adjustments.

Props ryelle, marybaum, davidbaumwald, audrasjb, estelaris, afercia, cbringmann, andreamiddleton, desrosj, SergeyBiryukov, ocean90, nrqsnchz, spacedmonkey, whyisjake, man4toman.
Merges [48783] to the 5.5 branch.
Fixes #50416.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48784 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-11 16:55:20 +00:00
Jake Spurlock 32016c9a91 Post WordPress 5.5 RC 3 version bump.
git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48781 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-10 16:53:55 +00:00
Jake Spurlock 002569e0c7 WordPress 5.5 RC 3.
git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48780 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-10 16:31:54 +00:00
Sergey Biryukov dd5e7eecdf Options, Meta APIs: Update the docs around default metadata values.
Add a missing @since value for 5.5 and potential default filter names.

Props johnbillion.
Reviewed by whyisjake, SergeyBiryukov.
Merges [48777] and [48778] to the 5.5 branch.
Fixes #50891.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48779 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-10 15:52:01 +00:00
Jonathan Desrosiers 8f90e1214a Bundled Themes: Bump theme versions ahead of WordPress 5.5.
The following theme versions will be released in coordination with WordPress 5.5:
- Twenty Ten: 3.1
- Twenty Eleven: 3.5
- Twenty Twelve: 3.2
- Twenty Thirteen: 3.1
- Twenty Fourteen: 2.9
- Twenty Fifteen: 2.7
- Twenty Sixteen: 2.2
- Twenty Seventeen: 2.4
- Twenty Nineteen: 1.7
- Twenty Twenty: 1.5

Props whyisjake, desrosj.
Reviewed by whyisjake, SergeyBiryukov, desrosj.
Merges [48775] to the 5.5 branch.
Fixes #50889.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48776 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-10 15:35:03 +00:00
Sergey Biryukov b54b69fcfb Editor: update packages.
Props ellatrix.
Reviewed by whyisjake, SergeyBiryukov.
Merges [48772] to the 5.5 branch.
Fixes #50888.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48773 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-10 14:20:54 +00:00
Sergey Biryukov 612dba0c7e I18N: Fix typo in a screen reader text string on the About page.
Follow-up to [48729].

Props pedromendonca.
Reviewed by desrosj, SergeyBiryukov.
Merges [48770] to the 5.5 branch.
Fixes #50884.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48771 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-10 13:23:42 +00:00
Sergey Biryukov dcfb85f81b I18N: Fix typo in a string in `rest_validate_value_from_schema()`.
Props pedromendonca.
Reviewed by TimothyBlynJacobs, SergeyBiryukov.
Merges [48767] to the 5.5 branch.
Fixes #50879.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48768 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-09 02:01:01 +00:00
Sergey Biryukov ec8435cf47 Help/About: Update videos and their descriptions on the About page.
Follow-up to [48675], [48686], [48721], [48729], [48730], [48736].

Props ryelle, marybaum, estelaris, desrosj, joen, afercia.
Reviewed by jorbin, SergeyBiryukov.
Merges [48761] to the 5.5 branch.
See #50416.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48763 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-08 21:00:09 +00:00
Jake Spurlock 89c0054e1f Themes: Add unlink-homepage-logo to the create_initial_theme_features() registration for the custom-logo theme feature.
Follow-up to [48039], [48283], [48749], [48757], [48758].

This brings the changes to the 5.5 branch.

Props TimothyBlynJacobs, SergeyBiryukov, whyisjake.
Fixes #37011.


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48759 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-07 21:20:23 +00:00
Jake Spurlock fb5dafdac3 Docs: Correct usage of the dynamic auto_update_{$type} filter.
This ensures that the canonical name of the filter is used in Site Health debug data, as well as on plugin and theme screens, so the developer reference site remains correct.

This brings the changes from [48750] to the 5.5 branch.

Props johnbillion.
Fixes #50868, see [48750].


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48756 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-07 19:23:04 +00:00
Jake Spurlock 2dd5d516ce Accessibility: Themes: Only unlink custom logo on the home page if the theme declares support for that.
To accommodate for the change, the custom-logo theme feature now accepts the unlink-homepage-logo parameter.

If and when the logo is linked on the home page, the link has the aria-current attribute for better accessibility.

Follow-up to [48039], [48283], see [48749].

This brings the changes to the 5.5 branch.

Props sabernhardt, audrasjb, johnstonphilip, demetris, SergeyBiryukov.
Fixes #37011.


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48755 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-07 19:18:19 +00:00
Sergey Biryukov ed42560f33 Comments: Update comment cache in the upgrade routine for changing the `comment_type` DB field value in comments table.
This ensures that comment object cache is cleared after changing the comment type to `comment` instead of an empty string.

Add a unit test for `_wp_batch_update_comment_type()`.

Follow-up to [47597], [47626], [48225], [48227].

Props imath, westonruter.
Reviewed by desrosj, SergeyBiryukov.
Merges [48748] and [48751] to the 5.5 branch.
Fixes #49236.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48752 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-07 16:33:39 +00:00
Jonathan Desrosiers a2b00b87ee Site Health: Consistently pass an object to the `auto_update_{$type}` filter in Site Health debug data.
Previously, some instances of the filter received an array from a plugin or theme update response, potentially triggering PHP notices.

Merges [48745] to the 5.5 branch.
Reviewed by desrosj, SergeyBiryukov.
Props bpayton, pbiron.
Fixes #50852.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48747 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-07 13:49:47 +00:00
Jonathan Desrosiers cdcda4981e Site Health: Check if session_status() exists before calling it.
Merges [48742] to the 5.5 branch.
Reviewed by desrosj, SergeyBiryukov.
Props bgermann.
Fixes #50862.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48746 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-07 13:41:55 +00:00
Jonathan Desrosiers ec8a5568b7 General: Add `svn:mergeinfo` missed in [48733].
Finishes merging [48729-48730] to the 5.5 branch.
See #50416.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48740 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-04 19:44:09 +00:00
Jake Spurlock c345b2af30 WordPress 5.5 RC 2 post-release version bump.
git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48739 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-04 19:16:17 +00:00
Jake Spurlock da34d0a098 WordPress 5.5 RC 2.
git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48738 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-04 18:55:02 +00:00
Sergey Biryukov 4e0dbae2da Help/About: Correct header spacing on shorter screens after removing the musician name.
Remove some unnecessary CSS.

Follow-up to [48730].

Props ryelle.
Reviewed by whyisjake, SergeyBiryukov.
Merges [48736] to the 5.5 branch.
See #50416.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48737 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-04 18:11:15 +00:00
Sergey Biryukov d83a210f21 Plugins: Move the "Successfully installed the plugin" string to the correct `Plugin_Upgrader` method.
The string refers to the installation, and belongs in the `::install_strings()` method, not in `::upgrade_strings()`.

Props sswebster, nateinaction.
Reviewed by whyisjake, SergeyBiryukov.
Merges [48734] to the 5.5 branch.
Fixes #50837.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48735 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-04 18:02:45 +00:00
Jonathan Desrosiers b211576719 Help/About: String updates and accessibility improvements to the 5.5 About page.
Merges [48729-48730] to the 5.5 branch.
Props audrasjb, SergeyBiryukov.
See #50416.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48733 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-04 17:42:44 +00:00
Jake Spurlock 21e7801838 Site Health: Display auto-update properly for plugins that don't support auto-updates.
Properly filter auto_update_plugin when displaying the table.

This brings the changes from [48731] to the 5.5 branch.

Fixes #50822.
Props Gwendydd, pbiron, audrasjb, SergeyBiryukov, whyisjake.


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48732 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-04 17:37:59 +00:00
Sergey Biryukov f3ffb37107 Editor: Update JS packages.
Props ellatrix.
Reviewed by youknowriad, SergeyBiryukov.
Merges [48725] to the 5.5 branch.
Fixes #50844.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48728 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-04 17:04:38 +00:00
Sergey Biryukov 8b8275897e Editor: Make some hardcoded strings in block patterns translatable.
Props ocean90.
Reviewed by youknowriad, SergeyBiryukov.
Merges [48726] to the 5.5 branch.
Fixes #50842.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48727 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-04 17:02:42 +00:00
Jake Spurlock c3c901bb2f Help/About: String update for 5.5 release.
We don't use hyphens for the [block editor](https://make.wordpress.org/core/handbook/best-practices/spelling/).

See #50416.
Props davidbaumwald, marybaum, desrosj.


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48723 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-04 15:56:18 +00:00
Jonathan Desrosiers 086abbc22d Editor: update JS packages.
Merges [48719] to the 5.5 branch.
Fixes #50841.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48720 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-04 14:02:46 +00:00
Andrea Fercia 9050f838d7 Accessibility: Administration: Address backward compatibility concerns for the sortable postboxes areas after [48340].
Merges [48717] to the 5.5 branch.
Fixes #49288 for 5.5.


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48718 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-04 13:28:58 +00:00
Sergey Biryukov 2cc3234bf6 HTTP: Update the Root Certificate bundle.
Keep 1024-bit legacy root certificates re-added in [35919], except for those already expired, for compatibility with older OpenSSL versions.

Props barry, ayeshrajans, desrosj, whyisjake.
Reviewed by whyisjake, SergeyBiryukov.
Merges [48707] to the 5.5 branch.
See #50828.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48708 602fd350-edb4-49c9-b593-d223f7449a82
2020-08-01 14:11:02 +00:00
Aaron Jorbin 27c8c04be3 Build/Test Tools: Update grunt-patch-wordpress for 5.5
Trunk's update happened in [50829]

Seconded by whyisjake and SergeyBiryukov.
Fixes #50829.



git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48706 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-31 19:20:09 +00:00
Jake Spurlock 0f98da6e55 Upgrade/Install: Ensure the proper count of plugins that have auto-update enabled.
As certain plugins may not support updates, this count needs to accurately reflect that in the navbar.

This brings the changes from [48703] to the WordPress 5.5 branch.

Fixes 50808.
Props knutsp, audrasjb, pbiron, dd32, apedog, afragen, chriscct7, garyc40, whyisjake, SergeyBiryukov.


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48704 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-31 17:22:06 +00:00
Jake Spurlock 0ff10b7f0a Upgrade/Install: Allow for WordPress.org to remotely disable auto-updates for plugins/themes
As auto-updates are rolled out across WordPress.org, the API response can modulate the response, ensuring that a rolled out could be stalled or staggered if needed for security or performance reasons.

This brings the changes from [48701] to the 5.5 branch.

Fixes #50824.
Props dd32, whyisjake, SergeyBiryukov.


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48702 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-31 17:03:24 +00:00
Jake Spurlock b700cb82c7 Upgrade/Install: Only show auto-update for themes that support the feature.
Similar to the changes for plugins in [48669], let's only show the UI for themes when updates are supported for that theme.

This brings the changes from [48688] to the 5.5 branch.

See #50280.
Props dd32.


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48698 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-30 22:02:54 +00:00
Jake Spurlock f91ef2f0a8 Upgrade/Install: Pass the plugin file path into the plugin_auto_update_debug_string filter.
Adds better tooling for when user specific plugins can be updated, but platform specific ones cannot.

This brings [48696] to the 5.5 branch.

Fixes #50821.

Props bpayton, pbiron, audrasjb, SergeyBiryukov, whyisjake.


git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48697 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-30 21:50:39 +00:00
Sergey Biryukov 85c129b556 Help/About: Adjust two strings on the About page for better i18n.
Follow-up to [48675].

Props ocean90, audrasjb, kittmedia, nao.
Reviewed by desrosj, SergeyBiryukov.
Merges [48686] to the 5.5 branch.
See #50416.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48691 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-30 12:13:12 +00:00
Sergey Biryukov 620916ef96 Themes: Pass correct variable to `is_php_version_compatible()` in `wp_theme_update_row()`.
This applies to the Themes screen in Multisite network admin.

Follow-up to [48660].

Props pbiron, afragen.
Reviewed by peterwilsoncc, SergeyBiryukov.
Merges [48689] to the 5.5 branch.
Fixes #48507. See #48491.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48690 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-30 11:44:06 +00:00
Sergey Biryukov 7d8b53ae15 Upgrade/Install: Pass correct argument to `clear_destination` in `Theme_Upgrader::install()`.
Follow-up to [48390].

Props afragen, sabernhardt.
Reviewed by desrosj, SergeyBiryukov.
Merges [48685] to the 5.5 branch.
Fixes #9757.

git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48687 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-29 15:18:39 +00:00
Sergey Biryukov f71de512e4 Branch 5.5
git-svn-id: https://develop.svn.wordpress.org/branches/5.5@48682 602fd350-edb4-49c9-b593-d223f7449a82
2020-07-28 20:52:01 +00:00
145 changed files with 4187 additions and 1866 deletions

29
.env
View File

@ -3,6 +3,10 @@
#
# All of these options can be overridden by setting them as environment variables before starting
# the environment. You will need to restart your environment when changing any of these.
#
# Below, the following substitutions can be made:
# - '{version}': any major.minor PHP version from 5.2 onwards.
# - '{phpunit_version}': any major PHPUnit version starting with 4.
##
# The site will be available at http://localhost:LOCAL_PORT
@ -11,10 +15,30 @@ LOCAL_PORT=8889
# Where to run WordPress from. Valid options are 'src' and 'build'.
LOCAL_DIR=src
# The PHP version to use. Valid options are 'latest', and '{version}-fpm', where '{version}' is any
# x.y PHP version from 5.2 onwards.
# The PHP version to use. Valid options are 'latest', and '{version}-fpm'.
LOCAL_PHP=latest
##
# The PHPUnit version to use when running tests.
#
# Support for new PHPUnit versions is not backported to past versions, so some old WordPress branches require an older
# version to run tests.
#
# Valid versions are:
# - 'latest' for the highest version of PHPUnit supported on the highest version of PHP supported.
# - '{version}-fpm' for the highest version of PHPUnit supported on the specified version of PHP.
# - '{phpunit_version}-php-{version}-fpm' for a specific version of PHPUnit on the specified version of PHP. This format
# is only available for PHP versions 5.6 and higher.
#
# For the full list of available options, see https://hub.docker.com/r/wordpressdevelop/phpunit/tags.
#
# For full documentation on PHPUnit compatibility and WordPress versions, see
# https://make.wordpress.org/core/handbook/references/phpunit-compatibility-and-wordpress-versions/.
#
# This defaults to the value assigned to the value of LOCAL_PHP.
##
LOCAL_PHPUNIT=${LOCAL_PHP}
# Whether or not to enable XDebug.
LOCAL_PHP_XDEBUG=false
@ -29,6 +53,7 @@ LOCAL_WP_DEBUG=true
LOCAL_WP_DEBUG_LOG=true
LOCAL_WP_DEBUG_DISPLAY=true
LOCAL_SCRIPT_DEBUG=true
LOCAL_WP_ENVIRONMENT_TYPE=local
# The URL to use when running e2e tests.
WP_BASE_URL=http://localhost:${LOCAL_PORT}

View File

@ -29,7 +29,7 @@ env:
jobs:
include:
- env: WP_TRAVISCI=test:e2e PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=
- env: WP_TRAVISCI=test:e2e LOCAL_PHPUNIT=latest PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=
name: E2E Tests
- env: WP_TRAVISCI=lint:php COMPOSER_INSTALL=true NPM_INSTALL=false WP_INSTALL=false
name: PHP Linting
@ -37,24 +37,24 @@ jobs:
name: "PHP Compatibility Check"
- env: WP_TRAVISCI=travis:js WP_INSTALL=false PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=
name: JS Tests
- env: LOCAL_PHP=7.4-fpm WP_TRAVISCI=test:php
- env: LOCAL_PHP=7.4-fpm LOCAL_PHPUNIT=7.4-fpm WP_TRAVISCI=test:php
name: "PHPUnit Tests: PHP 7.4"
- env: LOCAL_PHP=7.3-fpm WP_TRAVISCI=test:php
- env: LOCAL_PHP=7.3-fpm LOCAL_PHPUNIT=7.3-fpm WP_TRAVISCI=test:php
name: "PHPUnit Tests: PHP 7.3"
- env: LOCAL_PHP=7.3-fpm LOCAL_PHP_MEMCACHED=true WP_TRAVISCI=test:php
- env: LOCAL_PHP=7.3-fpm LOCAL_PHPUNIT=7.3-fpm LOCAL_PHP_MEMCACHED=true WP_TRAVISCI=test:php
name: "PHPUnit Tests: PHP 7.3 with Memcached"
- env: LOCAL_PHP=7.2-fpm WP_TRAVISCI=test:php
- env: LOCAL_PHP=7.2-fpm LOCAL_PHPUNIT=7.2-fpm WP_TRAVISCI=test:php
name: "PHPUnit Tests: PHP 7.2"
- env: LOCAL_PHP=7.1-fpm WP_TRAVISCI=test:php
- env: LOCAL_PHP=7.1-fpm LOCAL_PHPUNIT=7.1-fpm WP_TRAVISCI=test:php
name: "PHPUnit Tests: PHP 7.1"
- env: LOCAL_PHP=7.0-fpm WP_TEST_REPORTER=true WP_TRAVISCI=test:php
- env: LOCAL_PHP=7.0-fpm LOCAL_PHPUNIT=7.0-fpm WP_TEST_REPORTER=true WP_TRAVISCI=test:php
name: "PHPUnit Tests: PHP 7.0"
- env: LOCAL_PHP=5.6-fpm WP_TRAVISCI=test:php
- env: LOCAL_PHP=5.6-fpm LOCAL_PHPUNIT=5.6-fpm WP_TRAVISCI=test:php
name: "PHPUnit Tests: PHP 5.6"
- env: LOCAL_PHP=8.0-fpm WP_TRAVISCI=test:php
- env: LOCAL_PHP=8.0-fpm LOCAL_PHPUNIT=8.0-fpm WP_TRAVISCI=test:php
name: "PHPUnit Tests: PHP 8.0"
allow_failures:
- env: LOCAL_PHP=8.0-fpm WP_TRAVISCI=test:php
- env: LOCAL_PHP=8.0-fpm LOCAL_PHPUNIT=8.0-fpm WP_TRAVISCI=test:php
fast_finish: true
before_install:

View File

@ -13,7 +13,7 @@
"php": ">=5.6"
},
"require-dev": {
"dealerdirect/phpcodesniffer-composer-installer": "~0.6.0",
"dealerdirect/phpcodesniffer-composer-installer": "^0.6.2 || ^0.7.0",
"wp-coding-standards/wpcs": "~2.3.0",
"phpcompatibility/phpcompatibility-wp": "^2.1.0",
"phpunit/phpunit": "^5.7 || ^6.5 || ^7.5"

22
composer.lock generated
View File

@ -4,27 +4,27 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "798cd84a945e4caa3d0161ff63ec3743",
"content-hash": "463db2b4afb439fb63d93173c0852e27",
"packages": [],
"packages-dev": [
{
"name": "dealerdirect/phpcodesniffer-composer-installer",
"version": "v0.6.2",
"version": "v0.7.0",
"source": {
"type": "git",
"url": "https://github.com/Dealerdirect/phpcodesniffer-composer-installer.git",
"reference": "8001af8eb107fbfcedc31a8b51e20b07d85b457a"
"reference": "e8d808670b8f882188368faaf1144448c169c0b7"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/Dealerdirect/phpcodesniffer-composer-installer/zipball/8001af8eb107fbfcedc31a8b51e20b07d85b457a",
"reference": "8001af8eb107fbfcedc31a8b51e20b07d85b457a",
"url": "https://api.github.com/repos/Dealerdirect/phpcodesniffer-composer-installer/zipball/e8d808670b8f882188368faaf1144448c169c0b7",
"reference": "e8d808670b8f882188368faaf1144448c169c0b7",
"shasum": ""
},
"require": {
"composer-plugin-api": "^1.0",
"php": "^5.3|^7",
"squizlabs/php_codesniffer": "^2|^3"
"composer-plugin-api": "^1.0 || ^2.0",
"php": ">=5.3",
"squizlabs/php_codesniffer": "^2 || ^3 || 4.0.x-dev"
},
"require-dev": {
"composer/composer": "*",
@ -71,7 +71,11 @@
"stylecheck",
"tests"
],
"time": "2020-01-29T20:22:20+00:00"
"support": {
"issues": "https://github.com/dealerdirect/phpcodesniffer-composer-installer/issues",
"source": "https://github.com/dealerdirect/phpcodesniffer-composer-installer"
},
"time": "2020-06-25T14:57:39+00:00"
},
{
"name": "doctrine/instantiator",

View File

@ -96,7 +96,7 @@ services:
# The PHPUnit container.
##
phpunit:
image: wordpressdevelop/phpunit:${LOCAL_PHP-latest}
image: wordpressdevelop/phpunit:${LOCAL_PHPUNIT-latest}
networks:
- wpdevnet

1369
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
{
"name": "WordPress",
"version": "5.5.0",
"version": "5.5.3",
"description": "WordPress is open source software you can use to create a beautiful website, blog, or app.",
"repository": {
"type": "svn",
@ -27,7 +27,7 @@
"devDependencies": {
"@wordpress/custom-templated-path-webpack-plugin": "1.7.0",
"@wordpress/dependency-extraction-webpack-plugin": "2.8.0",
"@wordpress/e2e-test-utils": "4.11.1",
"@wordpress/e2e-test-utils": "4.11.2",
"@wordpress/library-export-default-webpack-plugin": "1.7.0",
"@wordpress/scripts": "12.1.1",
"autoprefixer": "9.6.2",
@ -35,7 +35,7 @@
"check-node-version": "4.0.1",
"copy-webpack-plugin": "^5.1.1",
"cssnano": "4.1.10",
"dotenv": "8.1.0",
"dotenv": "8.2.0",
"dotenv-expand": "5.1.0",
"grunt": "~1.1.0",
"grunt-banner": "^0.6.0",
@ -53,7 +53,7 @@
"grunt-jsdoc": "2.4.0",
"grunt-jsvalidate": "~0.2.2",
"grunt-legacy-util": "^1.1.1",
"grunt-patch-wordpress": "~2.0.0",
"grunt-patch-wordpress": "~3.0.0",
"grunt-postcss": "~0.9.0",
"grunt-replace-lts": "~1.1.0",
"grunt-rtlcss": "~2.0.1",
@ -81,46 +81,46 @@
"dependencies": {
"@babel/polyfill": "7.10.1",
"@wordpress/a11y": "2.11.0",
"@wordpress/annotations": "1.20.3",
"@wordpress/annotations": "1.20.4",
"@wordpress/api-fetch": "3.18.0",
"@wordpress/autop": "2.9.0",
"@wordpress/blob": "2.9.0",
"@wordpress/block-directory": "1.13.3",
"@wordpress/block-editor": "4.3.3",
"@wordpress/block-library": "2.22.3",
"@wordpress/block-directory": "1.13.9",
"@wordpress/block-editor": "4.3.9",
"@wordpress/block-library": "2.22.9",
"@wordpress/block-serialization-default-parser": "3.7.0",
"@wordpress/blocks": "6.20.3",
"@wordpress/components": "10.0.3",
"@wordpress/blocks": "6.20.4",
"@wordpress/components": "10.0.7",
"@wordpress/compose": "3.19.3",
"@wordpress/core-data": "2.20.3",
"@wordpress/core-data": "2.20.4",
"@wordpress/data": "4.22.3",
"@wordpress/data-controls": "1.16.3",
"@wordpress/date": "3.10.0",
"@wordpress/deprecated": "2.9.0",
"@wordpress/dom": "2.13.1",
"@wordpress/dom-ready": "2.10.0",
"@wordpress/edit-post": "3.21.3",
"@wordpress/editor": "9.20.3",
"@wordpress/edit-post": "3.21.9",
"@wordpress/editor": "9.20.9",
"@wordpress/element": "2.16.0",
"@wordpress/escape-html": "1.9.0",
"@wordpress/format-library": "1.22.3",
"@wordpress/format-library": "1.22.9",
"@wordpress/hooks": "2.9.0",
"@wordpress/html-entities": "2.8.0",
"@wordpress/i18n": "3.14.0",
"@wordpress/icons": "2.4.0",
"@wordpress/icons": "2.4.1",
"@wordpress/is-shallow-equal": "2.1.0",
"@wordpress/keyboard-shortcuts": "1.9.3",
"@wordpress/keycodes": "2.14.0",
"@wordpress/list-reusable-blocks": "1.21.3",
"@wordpress/list-reusable-blocks": "1.21.7",
"@wordpress/media-utils": "1.15.0",
"@wordpress/notices": "2.8.3",
"@wordpress/nux": "3.20.3",
"@wordpress/plugins": "2.20.3",
"@wordpress/nux": "3.20.7",
"@wordpress/plugins": "2.20.4",
"@wordpress/primitives": "1.7.0",
"@wordpress/priority-queue": "1.7.0",
"@wordpress/redux-routine": "3.10.0",
"@wordpress/rich-text": "3.20.3",
"@wordpress/server-side-render": "1.16.3",
"@wordpress/rich-text": "3.20.4",
"@wordpress/server-side-render": "1.16.7",
"@wordpress/shortcode": "2.9.0",
"@wordpress/token-list": "1.11.0",
"@wordpress/url": "2.17.0",

View File

@ -16,7 +16,340 @@
var $document = $( document ),
$window = $( window ),
$body = $( document.body ),
__ = wp.i18n.__;
__ = wp.i18n.__,
sprintf = wp.i18n.sprintf;
/**
* Throws an error for a deprecated property.
*
* @since 5.5.1
*
* @param {string} propName The property that was used.
* @param {string} version The version of WordPress that deprecated the property.
* @param {string} replacement The property that should have been used.
*/
function deprecatedProperty( propName, version, replacement ) {
var message;
if ( 'undefined' !== typeof replacement ) {
message = sprintf(
/* translators: 1: Deprecated property name, 2: Version number, 3: Alternative property name. */
__( '%1$s is deprecated since version %2$s! Use %3$s instead.' ),
propName,
version,
replacement
);
} else {
message = sprintf(
/* translators: 1: Deprecated property name, 2: Version number. */
__( '%1$s is deprecated since version %2$s with no alternative available.' ),
propName,
version
);
}
window.console.warn( message );
}
/**
* Deprecate all properties on an object.
*
* @since 5.5.1
*
* @param {string} name The name of the object, i.e. commonL10n.
* @param {object} l10nObject The object to deprecate the properties on.
*
* @return {object} The object with all its properties deprecated.
*/
function deprecateL10nObject( name, l10nObject ) {
var deprecatedObject = {};
Object.keys( l10nObject ).forEach( function( key ) {
var prop = l10nObject[ key ];
var propName = name + '.' + key;
if ( 'object' === typeof prop ) {
Object.defineProperty( deprecatedObject, key, { get: function() {
deprecatedProperty( propName, '5.5.0', prop.alternative );
return prop.func();
} } );
} else {
Object.defineProperty( deprecatedObject, key, { get: function() {
deprecatedProperty( propName, '5.5.0', 'wp.i18n' );
return prop;
} } );
}
} );
return deprecatedObject;
}
window.wp.deprecateL10nObject = deprecateL10nObject;
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 2.6.0
* @deprecated 5.5.0
*/
window.commonL10n = window.commonL10n || {
warnDelete: '',
dismiss: '',
collapseMenu: '',
expandMenu: ''
};
window.commonL10n = deprecateL10nObject( 'commonL10n', window.commonL10n );
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 3.3.0
* @deprecated 5.5.0
*/
window.wpPointerL10n = window.wpPointerL10n || {
dismiss: ''
};
window.wpPointerL10n = deprecateL10nObject( 'wpPointerL10n', window.wpPointerL10n );
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 4.3.0
* @deprecated 5.5.0
*/
window.userProfileL10n = window.userProfileL10n || {
warn: '',
warnWeak: '',
show: '',
hide: '',
cancel: '',
ariaShow: '',
ariaHide: ''
};
window.userProfileL10n = deprecateL10nObject( 'userProfileL10n', window.userProfileL10n );
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 4.9.6
* @deprecated 5.5.0
*/
window.privacyToolsL10n = window.privacyToolsL10n || {
noDataFound: '',
foundAndRemoved: '',
noneRemoved: '',
someNotRemoved: '',
removalError: '',
emailSent: '',
noExportFile: '',
exportError: ''
};
window.privacyToolsL10n = deprecateL10nObject( 'privacyToolsL10n', window.privacyToolsL10n );
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 3.6.0
* @deprecated 5.5.0
*/
window.authcheckL10n = {
beforeunload: ''
};
window.authcheckL10n = window.authcheckL10n || deprecateL10nObject( 'authcheckL10n', window.authcheckL10n );
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 2.8.0
* @deprecated 5.5.0
*/
window.tagsl10n = {
noPerm: '',
broken: ''
};
window.tagsl10n = window.tagsl10n || deprecateL10nObject( 'tagsl10n', window.tagsl10n );
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 2.5.0
* @deprecated 5.5.0
*/
window.adminCommentsL10n = window.adminCommentsL10n || {
hotkeys_highlight_first: {
alternative: 'window.adminCommentsSettings.hotkeys_highlight_first',
func: function() { return window.adminCommentsSettings.hotkeys_highlight_first; }
},
hotkeys_highlight_last: {
alternative: 'window.adminCommentsSettings.hotkeys_highlight_last',
func: function() { return window.adminCommentsSettings.hotkeys_highlight_last; }
},
replyApprove: '',
reply: '',
warnQuickEdit: '',
warnCommentChanges: '',
docTitleComments: '',
docTitleCommentsCount: ''
};
window.adminCommentsL10n = deprecateL10nObject( 'adminCommentsL10n', window.adminCommentsL10n );
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 2.5.0
* @deprecated 5.5.0
*/
window.tagsSuggestL10n = window.tagsSuggestL10n || {
tagDelimiter: '',
removeTerm: '',
termSelected: '',
termAdded: '',
termRemoved: ''
};
window.tagsSuggestL10n = deprecateL10nObject( 'tagsSuggestL10n', window.tagsSuggestL10n );
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 3.5.0
* @deprecated 5.5.0
*/
window.wpColorPickerL10n = window.wpColorPickerL10n || {
clear: '',
clearAriaLabel: '',
defaultString: '',
defaultAriaLabel: '',
pick: '',
defaultLabel: ''
};
window.wpColorPickerL10n = deprecateL10nObject( 'wpColorPickerL10n', window.wpColorPickerL10n );
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 2.7.0
* @deprecated 5.5.0
*/
window.attachMediaBoxL10n = window.attachMediaBoxL10n || {
error: ''
};
window.attachMediaBoxL10n = deprecateL10nObject( 'attachMediaBoxL10n', window.attachMediaBoxL10n );
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 2.5.0
* @deprecated 5.5.0
*/
window.postL10n = window.postL10n || {
ok: '',
cancel: '',
publishOn: '',
publishOnFuture: '',
publishOnPast: '',
dateFormat: '',
showcomm: '',
endcomm: '',
publish: '',
schedule: '',
update: '',
savePending: '',
saveDraft: '',
'private': '',
'public': '',
publicSticky: '',
password: '',
privatelyPublished: '',
published: '',
saveAlert: '',
savingText: '',
permalinkSaved: ''
};
window.postL10n = deprecateL10nObject( 'postL10n', window.postL10n );
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 2.7.0
* @deprecated 5.5.0
*/
window.inlineEditL10n = window.inlineEditL10n || {
error: '',
ntdeltitle: '',
notitle: '',
comma: '',
saved: ''
};
window.inlineEditL10n = deprecateL10nObject( 'inlineEditL10n', window.inlineEditL10n );
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 2.7.0
* @deprecated 5.5.0
*/
window.plugininstallL10n = window.plugininstallL10n || {
plugin_information: '',
plugin_modal_label: '',
ays: ''
};
window.plugininstallL10n = deprecateL10nObject( 'plugininstallL10n', window.plugininstallL10n );
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 3.0.0
* @deprecated 5.5.0
*/
window.navMenuL10n = window.navMenuL10n || {
noResultsFound: '',
warnDeleteMenu: '',
saveAlert: '',
untitled: ''
};
window.navMenuL10n = deprecateL10nObject( 'navMenuL10n', window.navMenuL10n );
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 2.5.0
* @deprecated 5.5.0
*/
window.commentL10n = window.commentL10n || {
submittedOn: '',
dateFormat: ''
};
window.commentL10n = deprecateL10nObject( 'commentL10n', window.commentL10n );
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 2.9.0
* @deprecated 5.5.0
*/
window.setPostThumbnailL10n = window.setPostThumbnailL10n || {
setThumbnail: '',
saving: '',
error: '',
done: ''
};
window.setPostThumbnailL10n = deprecateL10nObject( 'setPostThumbnailL10n', window.setPostThumbnailL10n );
/**
* Removed in 3.3.0, needed for back-compatibility.

View File

@ -126,11 +126,13 @@
frame.on( 'select', function() {
// Grab the selected attachment.
var attachment = frame.state().get('selection').first();
var nonceValue = $( '#_wpnonce' ).val() || '';
// Run an Ajax request to set the background image.
$.post( ajaxurl, {
action: 'set-background-image',
attachment_id: attachment.id,
_ajax_nonce: nonceValue,
size: 'full'
}).done( function() {
// When the request completes, reload the window.

View File

@ -394,6 +394,8 @@
opacity: 0.65,
start: function() {
$( 'body' ).addClass( 'is-dragging-metaboxes' );
// Refresh the cached positions of all the sortable items so that the min-height set while dragging works.
$( '.meta-box-sortables' ).sortable( 'refreshPositions' );
},
stop: function() {
var $el = $( this );
@ -520,13 +522,14 @@
* @return {void}
*/
_mark_area : function() {
var visibleSortables = $( '#dashboard-widgets .meta-box-sortables:visible, #post-body .meta-box-sortables:visible' ),
var visible = $( 'div.postbox:visible' ).length,
visibleSortables = $( '#dashboard-widgets .meta-box-sortables:visible, #post-body .meta-box-sortables:visible' ),
areAllVisibleSortablesEmpty = true;
visibleSortables.each( function() {
var t = $(this);
if ( t.children('.postbox:visible').length ) {
if ( visible == 1 || t.children( '.postbox:visible' ).length ) {
t.removeClass('empty-container');
areAllVisibleSortablesEmpty = false;
}
@ -543,6 +546,9 @@
*
* @since 5.5.0
*
* @param {Object} visibleSortables The jQuery object representing the visible sortable areas.
* @param {boolean} areAllVisibleSortablesEmpty Whether all the visible sortable areas are "empty".
*
* @return {void}
*/
updateEmptySortablesText: function( visibleSortables, areAllVisibleSortablesEmpty ) {

View File

@ -744,3 +744,20 @@ window.wpWidgets = {
$document.ready( function(){ wpWidgets.init(); } );
})(jQuery);
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 4.9.0
* @deprecated 5.5.0
*
* @type {object}
*/
wpWidgets.l10n = wpWidgets.l10n || {
save: '',
saved: '',
saveAlert: '',
widgetAdded: ''
};
wpWidgets.l10n = window.wp.deprecateL10nObject( 'wpWidgets.l10n', wpWidgets.l10n );

View File

@ -11,7 +11,7 @@ jQuery(function($) {
* Adds a click event handler to the element with a 'wp-gallery' class.
*/
$( 'body' ).bind( 'click.wp-gallery', function(e) {
var target = $( e.target ), id, img_size;
var target = $( e.target ), id, img_size, nonceValue;
if ( target.hasClass( 'wp-set-header' ) ) {
// Opens the image to preview it full size.
@ -21,6 +21,7 @@ jQuery(function($) {
// Sets the image as background of the theme.
id = target.data( 'attachment-id' );
img_size = $( 'input[name="attachments[' + id + '][image-size]"]:checked').val();
nonceValue = $( '#_wpnonce' ).val() && '';
/**
* This Ajax action has been deprecated since 3.5.0, see custom-background.php
@ -28,6 +29,7 @@ jQuery(function($) {
jQuery.post(ajaxurl, {
action: 'set-background-image',
attachment_id: id,
_ajax_nonce: nonceValue,
size: img_size
}, function() {
var win = window.dialogArguments || opener || parent || top;

View File

@ -175,11 +175,19 @@ window.addComment = ( function( window ) {
var headingText = temporaryElement.textContent;
temporaryElement.parentNode.replaceChild( respondElement, temporaryElement );
cancelLink.style.display = 'none';
var replyHeadingElement = getElementById( config.commentReplyTitleId );
var replyHeadingElement = getElementById( config.commentReplyTitleId );
var replyHeadingTextNode = replyHeadingElement && replyHeadingElement.firstChild;
var replyLinkToParent = replyHeadingTextNode && replyHeadingTextNode.nextSibling;
if ( replyHeadingTextNode && replyHeadingTextNode.nodeType === Node.TEXT_NODE && headingText ) {
if ( replyLinkToParent && 'A' === replyLinkToParent.nodeName && replyLinkToParent.id !== config.cancelReplyId ) {
replyLinkToParent.style.display = '';
}
replyHeadingTextNode.textContent = headingText;
}
event.preventDefault();
}
@ -314,8 +322,9 @@ window.addComment = ( function( window ) {
var postIdField = getElementById( config.postIdFieldId );
var element, cssHidden, style;
var replyHeading = getElementById( config.commentReplyTitleId );
var replyHeading = getElementById( config.commentReplyTitleId );
var replyHeadingTextNode = replyHeading && replyHeading.firstChild;
var replyLinkToParent = replyHeadingTextNode && replyHeadingTextNode.nextSibling;
if ( ! addBelowElement || ! respondElement || ! parentIdField ) {
// Missing key elements, fail.
@ -337,9 +346,15 @@ window.addComment = ( function( window ) {
cancelElement.style.display = '';
addBelowElement.parentNode.insertBefore( respondElement, addBelowElement.nextSibling );
if ( replyHeadingTextNode.nodeType === Node.TEXT_NODE ) {
if ( replyHeadingTextNode && replyHeadingTextNode.nodeType === Node.TEXT_NODE ) {
if ( replyLinkToParent && 'A' === replyLinkToParent.nodeName && replyLinkToParent.id !== config.cancelReplyId ) {
replyLinkToParent.style.display = 'none';
}
replyHeadingTextNode.textContent = replyTo;
}
/*
* This is for backward compatibility with third party commenting systems
* hooking into the event using older techniques.
@ -408,7 +423,7 @@ window.addComment = ( function( window ) {
var temporaryFormId = config.temporaryFormId;
var temporaryElement = getElementById( temporaryFormId );
var replyElement = getElementById( config.commentReplyTitleId );
var initialHeadingText = ( 'undefined' !== typeof replyElement ) ? replyElement.firstChild.textContent : '';
var initialHeadingText = replyElement ? replyElement.firstChild.textContent : '';
if ( temporaryElement ) {
// The element already exists, no need to recreate.

View File

@ -266,6 +266,11 @@ jQuery( function( $ ) {
'use strict';
var communityEventsData = window.communityEventsData || {},
dateI18n = wp.date.dateI18n,
format = wp.date.format,
sprintf = wp.i18n.sprintf,
__ = wp.i18n.__,
_x = wp.i18n._x,
app;
/**
@ -441,6 +446,7 @@ jQuery( function( $ ) {
.fail( function() {
app.renderEventsTemplate({
'location' : false,
'events' : [],
'error' : true
}, initiatedBy );
});
@ -465,6 +471,11 @@ jQuery( function( $ ) {
$locationMessage = $( '#community-events-location-message' ),
$results = $( '.community-events-results' );
templateParams.events = app.populateDynamicEventFields(
templateParams.events,
communityEventsData.time_format
);
/*
* Hide all toggleable elements by default, to keep the logic simple.
* Otherwise, each block below would have to turn hide everything that
@ -576,6 +587,195 @@ jQuery( function( $ ) {
} else {
app.toggleLocationForm( 'show' );
}
},
/**
* Populate event fields that have to be calculated on the fly.
*
* These can't be stored in the database, because they're dependent on
* the user's current time zone, locale, etc.
*
* @since 5.5.2
*
* @param {Array} rawEvents The events that should have dynamic fields added to them.
* @param {string} timeFormat A time format acceptable by `wp.date.dateI18n()`.
*
* @returns {Array}
*/
populateDynamicEventFields: function( rawEvents, timeFormat ) {
// Clone the parameter to avoid mutating it, so that this can remain a pure function.
var populatedEvents = JSON.parse( JSON.stringify( rawEvents ) );
$.each( populatedEvents, function( index, event ) {
var timeZone = app.getTimeZone( event.start_unix_timestamp * 1000 );
event.user_formatted_date = app.getFormattedDate(
event.start_unix_timestamp * 1000,
event.end_unix_timestamp * 1000,
timeZone
);
event.user_formatted_time = dateI18n(
timeFormat,
event.start_unix_timestamp * 1000,
timeZone
);
event.timeZoneAbbreviation = app.getTimeZoneAbbreviation( event.start_unix_timestamp * 1000 );
} );
return populatedEvents;
},
/**
* Returns the user's local/browser time zone, in a form suitable for `wp.date.i18n()`.
*
* @since 5.5.2
*
* @param startTimestamp
*
* @returns {string|number}
*/
getTimeZone: function( startTimestamp ) {
/*
* Prefer a name like `Europe/Helsinki`, since that automatically tracks daylight savings. This
* doesn't need to take `startTimestamp` into account for that reason.
*/
var timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;
/*
* Fall back to an offset for IE11, which declares the property but doesn't assign a value.
*/
if ( 'undefined' === typeof timeZone ) {
/*
* It's important to use the _event_ time, not the _current_
* time, so that daylight savings time is accounted for.
*/
timeZone = app.getFlippedTimeZoneOffset( startTimestamp );
}
return timeZone;
},
/**
* Get intuitive time zone offset.
*
* `Data.prototype.getTimezoneOffset()` returns a positive value for time zones
* that are _behind_ UTC, and a _negative_ value for ones that are ahead.
*
* See https://stackoverflow.com/questions/21102435/why-does-javascript-date-gettimezoneoffset-consider-0500-as-a-positive-off.
*
* @since 5.5.2
*
* @param {number} startTimestamp
*
* @returns {number}
*/
getFlippedTimeZoneOffset: function( startTimestamp ) {
return new Date( startTimestamp ).getTimezoneOffset() * -1;
},
/**
* Get a short time zone name, like `PST`.
*
* @since 5.5.2
*
* @param {number} startTimestamp
*
* @returns {string}
*/
getTimeZoneAbbreviation: function( startTimestamp ) {
var timeZoneAbbreviation,
eventDateTime = new Date( startTimestamp );
/*
* Leaving the `locales` argument undefined is important, so that the browser
* displays the abbreviation that's most appropriate for the current locale. For
* some that will be `UTC{+|-}{n}`, and for others it will be a code like `PST`.
*
* This doesn't need to take `startTimestamp` into account, because a name like
* `America/Chicago` automatically tracks daylight savings.
*/
var shortTimeStringParts = eventDateTime.toLocaleTimeString( undefined, { timeZoneName : 'short' } ).split( ' ' );
if ( 3 === shortTimeStringParts.length ) {
timeZoneAbbreviation = shortTimeStringParts[2];
}
if ( 'undefined' === typeof timeZoneAbbreviation ) {
/*
* It's important to use the _event_ time, not the _current_
* time, so that daylight savings time is accounted for.
*/
var timeZoneOffset = app.getFlippedTimeZoneOffset( startTimestamp ),
sign = -1 === Math.sign( timeZoneOffset ) ? '' : '+';
// translators: Used as part of a string like `GMT+5` in the Events Widget.
timeZoneAbbreviation = _x( 'GMT', 'Events widget offset prefix' ) + sign + ( timeZoneOffset / 60 );
}
return timeZoneAbbreviation;
},
/**
* Format a start/end date in the user's local time zone and locale.
*
* @since 5.5.2
*
* @param {int} startDate The Unix timestamp in milliseconds when the the event starts.
* @param {int} endDate The Unix timestamp in milliseconds when the the event ends.
* @param {string} timeZone A time zone string or offset which is parsable by `wp.date.i18n()`.
*
* @returns {string}
*/
getFormattedDate: function( startDate, endDate, timeZone ) {
var formattedDate;
/*
* The `date_format` option is not used because it's important
* in this context to keep the day of the week in the displayed date,
* so that users can tell at a glance if the event is on a day they
* are available, without having to open the link.
*
* The case of crossing a year boundary is intentionally not handled.
* It's so rare in practice that it's not worth the complexity
* tradeoff. The _ending_ year should be passed to
* `multiple_month_event`, though, just in case.
*/
/* translators: Date format for upcoming events on the dashboard. Include the day of the week. See https://www.php.net/manual/datetime.format.php */
var singleDayEvent = __( 'l, M j, Y' ),
/* translators: Date string for upcoming events. 1: Month, 2: Starting day, 3: Ending day, 4: Year. */
multipleDayEvent = __( '%1$s %2$d%3$d, %4$d' ),
/* translators: Date string for upcoming events. 1: Starting month, 2: Starting day, 3: Ending month, 4: Ending day, 5: Ending year. */
multipleMonthEvent = __( '%1$s %2$d %3$s %4$d, %5$d' );
// Detect single-day events.
if ( ! endDate || format( 'Y-m-d', startDate ) === format( 'Y-m-d', endDate ) ) {
formattedDate = dateI18n( singleDayEvent, startDate, timeZone );
// Multiple day events.
} else if ( format( 'Y-m', startDate ) === format( 'Y-m', endDate ) ) {
formattedDate = sprintf(
multipleDayEvent,
dateI18n( _x( 'F', 'upcoming events month format' ), startDate, timeZone ),
dateI18n( _x( 'j', 'upcoming events day format' ), startDate, timeZone ),
dateI18n( _x( 'j', 'upcoming events day format' ), endDate, timeZone ),
dateI18n( _x( 'Y', 'upcoming events year format' ), endDate, timeZone )
);
// Multi-day events that cross a month boundary.
} else {
formattedDate = sprintf(
multipleMonthEvent,
dateI18n( _x( 'F', 'upcoming events month format' ), startDate, timeZone ),
dateI18n( _x( 'j', 'upcoming events day format' ), startDate, timeZone ),
dateI18n( _x( 'F', 'upcoming events month format' ), endDate, timeZone ),
dateI18n( _x( 'j', 'upcoming events day format' ), endDate, timeZone ),
dateI18n( _x( 'Y', 'upcoming events year format' ), endDate, timeZone )
);
}
return formattedDate;
}
};

View File

@ -1000,3 +1000,27 @@ wp.themePluginEditor = (function( $ ) {
return component;
})( jQuery );
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 4.9.0
* @deprecated 5.5.0
*
* @type {object}
*/
wp.themePluginEditor.l10n = wp.themePluginEditor.l10n || {
saveAlert: '',
saveError: '',
lintError: {
alternative: 'wp.i18n',
func: function() {
return {
singular: '',
plural: ''
};
}
}
};
wp.themePluginEditor.l10n = window.wp.deprecateL10nObject( 'wp.themePluginEditor.l10n', wp.themePluginEditor.l10n );

View File

@ -802,8 +802,11 @@ themes.view.Details = wp.Backbone.View.extend({
// Support concurrent clicks in different Theme Details overlays.
callback = function( event, data ) {
var autoupdate;
if ( _this.model.get( 'id' ) === data.asset ) {
_this.model.set( { autoupdate: 'enable' === data.state } );
autoupdate = _this.model.get( 'autoupdate' );
autoupdate.enabled = 'enable' === data.state;
_this.model.set( { autoupdate: autoupdate } );
$( document ).off( 'wp-auto-update-setting-changed', callback );
}
};

View File

@ -42,6 +42,81 @@
*/
wp.updates = {};
/**
* Removed in 5.5.0, needed for back-compatibility.
*
* @since 4.2.0
* @deprecated 5.5.0
*
* @type {object}
*/
wp.updates.l10n = {
searchResults: '',
searchResultsLabel: '',
noPlugins: '',
noItemsSelected: '',
updating: '',
pluginUpdated: '',
themeUpdated: '',
update: '',
updateNow: '',
pluginUpdateNowLabel: '',
updateFailedShort: '',
updateFailed: '',
pluginUpdatingLabel: '',
pluginUpdatedLabel: '',
pluginUpdateFailedLabel: '',
updatingMsg: '',
updatedMsg: '',
updateCancel: '',
beforeunload: '',
installNow: '',
pluginInstallNowLabel: '',
installing: '',
pluginInstalled: '',
themeInstalled: '',
installFailedShort: '',
installFailed: '',
pluginInstallingLabel: '',
themeInstallingLabel: '',
pluginInstalledLabel: '',
themeInstalledLabel: '',
pluginInstallFailedLabel: '',
themeInstallFailedLabel: '',
installingMsg: '',
installedMsg: '',
importerInstalledMsg: '',
aysDelete: '',
aysDeleteUninstall: '',
aysBulkDelete: '',
aysBulkDeleteThemes: '',
deleting: '',
deleteFailed: '',
pluginDeleted: '',
themeDeleted: '',
livePreview: '',
activatePlugin: '',
activateTheme: '',
activatePluginLabel: '',
activateThemeLabel: '',
activateImporter: '',
activateImporterLabel: '',
unknownError: '',
connectionError: '',
nonceError: '',
pluginsFound: '',
noPluginsFound: '',
autoUpdatesEnable: '',
autoUpdatesEnabling: '',
autoUpdatesEnabled: '',
autoUpdatesDisable: '',
autoUpdatesDisabling: '',
autoUpdatesDisabled: '',
autoUpdatesError: ''
};
wp.updates.l10n = window.wp.deprecateL10nObject( 'wp.updates.l10n', wp.updates.l10n );
/**
* User nonce for ajax calls.
*

View File

@ -61,35 +61,112 @@ require_once ABSPATH . 'wp-admin/admin-header.php';
<hr />
<div class="about__section has-2-columns is-wider-left">
<div class="about__section has-subtle-background-color">
<div class="column">
<h2><?php _e( 'Maintenance and Security Releases' ); ?></h2>
<p>
<?php
printf(
/* translators: 1: WordPress version number, 2: Plural number of bugs. */
_n(
'<strong>Version %1$s</strong> addressed %2$s bug.',
'<strong>Version %1$s</strong> addressed %2$s bugs.',
1
),
'5.5.3',
number_format_i18n( 1 )
);
?>
<?php
printf(
/* translators: %s: HelpHub URL. */
__( 'For more information, see <a href="%s">the release notes</a>.' ),
sprintf(
/* translators: %s: WordPress version. */
esc_url( __( 'https://wordpress.org/support/wordpress-version/version-%s/' ) ),
sanitize_title( '5.5.3' )
)
);
?>
</p>
<p>
<?php
printf(
/* translators: 1: WordPress version number, 2: plural number of bugs. More than one security issue. */
_n(
'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
'<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.',
14
),
'5.5.2',
number_format_i18n( 14 )
);
?>
<?php
printf(
/* translators: %s: HelpHub URL */
__( 'For more information, see <a href="%s">the release notes</a>.' ),
sprintf(
/* translators: %s: WordPress version */
esc_url( __( 'https://wordpress.org/support/wordpress-version/version-%s/' ) ),
sanitize_title( '5.5.2' )
)
);
?>
</p>
<p>
<?php
printf(
/* translators: 1: WordPress version number, 2: Plural number of bugs. */
_n(
'<strong>Version %1$s</strong> addressed %2$s bug.',
'<strong>Version %1$s</strong> addressed %2$s bugs.',
44
),
'5.5.1',
number_format_i18n( 44 )
);
?>
<?php
printf(
/* translators: %s: HelpHub URL. */
__( 'For more information, see <a href="%s">the release notes</a>.' ),
sprintf(
/* translators: %s: WordPress version. */
esc_url( __( 'https://wordpress.org/support/wordpress-version/version-%s/' ) ),
sanitize_title( '5.5.1' )
)
);
?>
</p>
</div>
</div>
<hr />
<div class="about__section has-1-column">
<div class="column">
<h2><?php _e( 'Speed' ); ?></h2>
<p><strong><?php _e( 'Posts and pages feel faster, thanks to lazy-loaded images.' ); ?></strong></p>
<p><?php _e( 'Images give your story a lot of impact, but they can sometimes make your site seem slow.' ); ?></p>
<p><?php _e( 'In WordPress 5.5, images wait to load until theyre just about to scroll into view. The technical term is lazy loading.' ); ?></p>
<p><?php _e( 'In WordPress 5.5, images wait to load until theyre just about to scroll into view. The technical term is lazy loading.' ); ?></p>
<p><?php _e( 'On mobile, lazy loading can also keep browsers from loading files meant for other devices. That can save your readers money on data — and help preserve battery life.' ); ?></p>
</div>
<div class="column is-edge-to-edge" style="background-color:skyblue;">
</div>
</div>
<hr class="is-small" />
<div class="about__section has-2-columns is-wider-right">
<div class="column is-edge-to-edge" style="background-color:skyblue;">
</div>
<div class="about__section has-1-column">
<div class="column">
<h2><?php _e( 'Search' ); ?></h2>
<h2><?php _ex( 'Search', 'sitemap' ); ?></h2>
<p><strong><?php _e( 'Say hello to your new sitemap.' ); ?></strong></p>
<p><?php _e( 'WordPress sites work well with search engines. ' ); ?></p>
<p><?php _e( 'WordPress sites work well with search engines.' ); ?></p>
<p><?php _e( 'Now, by default, WordPress 5.5 includes an XML sitemap that helps search engines discover your most important pages from the very minute you go live.' ); ?></p>
<p><?php _e( 'So more people will find your site sooner, giving you more time to engage, retain and convert them to subscribers, customers or whatever fits your definition of success.' ); ?></p>
</div>
</div>
<hr class="is-small" />
<hr />
<div class="about__section has-2-columns is-wider-left">
<div class="about__section has-2-columns has-accent-background-color is-wider-right">
<div class="column">
<h2><?php _e( 'Security' ); ?></h2>
<p><strong><?php _e( 'Auto-updates for Plugins and Themes' ); ?></strong></p>
@ -98,48 +175,67 @@ require_once ABSPATH . 'wp-admin/admin-header.php';
<p><strong><?php _e( 'Update by uploading ZIP files' ); ?></strong></p>
<p><?php _e( 'If updating plugins and themes manually is your thing, now thats easier too — just upload a ZIP file.' ); ?></p>
</div>
<div class="column is-edge-to-edge" style="background-color:skyblue;">
<div class="column about__image is-vertically-aligned-center">
<figure aria-labelledby="about-security" class="about__image">
<video controls poster="https://s.w.org/images/core/5.5/auto-updates-poster.png">
<source src="https://s.w.org/images/core/5.5/auto-updates.mp4" type="video/mp4" />
<source src="https://s.w.org/images/core/5.5/auto-updates.webm" type="video/webm" />
</video>
<figcaption id="about-security" class="screen-reader-text"><?php _e( 'Video: Installed plugin screen, which shows a new column, Automatic Updates. In this column are buttons that say "Enable auto-updates". When clicked, the auto-updates feature is turned on for that plugin, and the button switches to say "Disable auto-updates".' ); ?></figcaption>
</figure>
</div>
</div>
<hr />
<div class="about__section">
<div class="column is-edge-to-edge" style="height:200px;background-color:skyblue;">
</div>
<div class="about__section has-subtle-background-color">
<div class="column">
<h2><?php _e( 'Highlights from the block editor' ); ?></h2>
<p><?php _e( 'Once again, the latest WordPress release packs a long list of exciting new features for the block editor. For example:' ); ?></p>
</div>
</div>
<div class="about__section has-2-columns">
<div class="column">
<h3><?php _e( 'Inline image editing' ); ?></h3>
<p><?php _e( 'Crop, rotate, and zoom your photos right from the image block. If you spend a lot of time on images, this could save you hours!' ); ?></p>
<h3><?php _e( 'Block patterns' ); ?></h3>
<p><?php _e( 'New block patterns make it simple and fun to create complex, beautiful layouts, using combinations of text and media that you can mix and match to fit your story.' ); ?></p>
<p><?php _e( 'You will also find block patterns in a wide variety of plugins and themes, with more added all the time. Pick any of them from a single dropdown — just click and go!' ); ?></p>
<div class="about__section has-2-columns has-subtle-background-color">
<div class="column about__image is-vertically-aligned-center">
<figure aria-labelledby="about-block-pattern" class="about__image">
<video controls poster="https://s.w.org/images/core/5.5/block-patterns-poster.png">
<source src="https://s.w.org/images/core/5.5/block-patterns.mp4" type="video/mp4" />
<source src="https://s.w.org/images/core/5.5/block-patterns.webm" type="video/webm" />
</video>
<figcaption id="about-block-pattern" class="screen-reader-text"><?php _e( 'Video: In the editor, the block inserter shows two tabs, Blocks and Patterns. The Patterns tab is selected. There are different block layouts in this tab. After scrolling through options including buttons and columns, a pattern called "Large header with a heading" is chosen. This adds a cover block, which is customized with a photo and the name of the WordPress 5.5 jazz musician.' ); ?></figcaption>
</figure>
<hr />
<figure aria-labelledby="about-image-editor" class="about__image">
<video controls poster="https://s.w.org/images/core/5.5/inline-image-editing-poster.png">
<source src="https://s.w.org/images/core/5.5/inline-image-editing.mp4" type="video/mp4" />
<source src="https://s.w.org/images/core/5.5/inline-image-editing-1.webm" type="video/webm" />
</video>
<figcaption id="about-image-editor" class="screen-reader-text"><?php _e( 'Video: An image is added with an image block. In the block toolbar, an icon called "Crop" is selected, which changes the toolbar to show image resizing tools. First, zoom is used to zoom into the center of the image. Next, aspect ratio is clicked. This shows a dropdown of common aspect ratios. Square is chosen, and the image is moved within the new square outline. The crop is completed by clicking "Apply."' ); ?></figcaption>
</figure>
</div>
<div class="column">
<h3><?php _e( 'Block patterns' ); ?></h3>
<p><?php _e( 'New block patterns make it simple and fun to create complex, beautiful layouts, using combinations of text and media that you can mix and match to fit your story.' ); ?></p>
<p><?php _e( 'You will also find block patterns in a wide variety of plugins and themes, with more added all the time. Pick any of them from a single place — just click and go!' ); ?></p>
<h3><?php _e( 'Inline image editing' ); ?></h3>
<p><?php _e( 'Crop, rotate, and zoom your photos right from the image block. If you spend a lot of time on images, this could save you hours!' ); ?></p>
<h3><?php _e( 'The New Block Directory' ); ?></h3>
<p><?php _e( 'Now its easier than ever to find the block you need. The new block directory is built right into the block editor, so you can install new block types to your site without ever leaving the editor.' ); ?></p>
<h3><?php _e( 'And so much more.' ); ?></h3>
<p><?php _e( 'The highlights above are a tiny fraction of the new block-editor features youve just installed. Open the block editor and enjoy!' ); ?></p>
<p><?php _e( 'The highlights above are a tiny fraction of the new block editor features youve just installed. Open the block editor and enjoy!' ); ?></p>
</div>
</div>
<hr />
<div class="about__section has-2-columns">
<div class="about__section has-1-column">
<div class="column">
<h2><?php _e( 'Accessibility' ); ?></h2>
<p><?php _e( 'Every release adds improvements to the accessible publishing experience, and that remains true for WordPress 5.5. ' ); ?></p>
<p><?php _e( 'Every release adds improvements to the accessible publishing experience, and that remains true for WordPress 5.5.' ); ?></p>
<p><?php _e( 'Now you can copy links in media screens and modal dialogs with a button, instead of trying to highlight a line of text.' ); ?></p>
<p><?php _e( 'You can also move meta boxes with the keyboard, and edit images in WordPress with your assistive device, as it can read you the instructions in the image editor.' ); ?></p>
</div>
<div class="column is-edge-to-edge" style="background-color:skyblue;">
</div>
</div>
<hr />
@ -155,7 +251,7 @@ require_once ABSPATH . 'wp-admin/admin-header.php';
</div>
<div class="column">
<h3><?php _e( 'Dashicons' ); ?></h3>
<p><?php _e( 'The Dashicons library has received its final update in 5.5. It adds 39 block-editor icons along with 26 others.' ); ?></p>
<p><?php _e( 'The Dashicons library has received its final update in 5.5. It adds 39 block editor icons along with 26 others.' ); ?></p>
</div>
</div>
@ -211,7 +307,25 @@ require_once ABSPATH . 'wp-admin/admin-header.php';
);
?>
</li>
<li><?php _e( 'New filters let custom post types associated with the category taxonomy have a default term beyond “Uncategorized.”' ); ?></li>
<li><?php _e( 'Custom post types associated with the category taxonomy can now opt-in to supporting the default term.' ); ?></li>
<li>
<?php
printf(
/* translators: %s: 'register_taxonomy' function name. */
__( 'Default terms can now be specified for custom taxonomies in %s.' ),
'<code>register_taxonomy()</code>'
);
?>
</li>
<li>
<?php
printf(
/* translators: %s: 'register_meta' function name. */
__( 'The REST API now officially supports specifying default metadata values through %s.' ),
'<code>register_meta()</code>'
);
?>
</li>
<li><?php _e( 'You will find updated versions of these bundled libraries: SimplePie, Twemoji, Masonry, imagesLoaded, getID3, Moment.js, and clipboard.js.' ); ?></li>
</ul>
</div>
@ -219,12 +333,6 @@ require_once ABSPATH . 'wp-admin/admin-header.php';
<hr class="is-small" />
<div class="about__section">
</div>
<hr class="is-small" />
<div class="about__section">
<div class="column">
<h3><?php _e( 'Check the Field Guide for more!' ); ?></h3>

View File

@ -82,12 +82,12 @@ $admin_body_class = preg_replace( '/[^a-z0-9_-]+/i', '-', $hook_suffix );
?>
<script type="text/javascript">
addLoadEvent = function(func){if(typeof jQuery!=='undefined')jQuery(document).ready(func);else if(typeof wpOnload!=='function'){wpOnload=func;}else{var oldonload=wpOnload;wpOnload=function(){oldonload();func();}}};
var ajaxurl = '<?php echo admin_url( 'admin-ajax.php', 'relative' ); ?>',
pagenow = '<?php echo $current_screen->id; ?>',
typenow = '<?php echo $current_screen->post_type; ?>',
adminpage = '<?php echo $admin_body_class; ?>',
thousandsSeparator = '<?php echo addslashes( $wp_locale->number_format['thousands_sep'] ); ?>',
decimalPoint = '<?php echo addslashes( $wp_locale->number_format['decimal_point'] ); ?>',
var ajaxurl = '<?php echo esc_js( admin_url( 'admin-ajax.php', 'relative' ) ); ?>',
pagenow = '<?php echo esc_js( $current_screen->id ); ?>',
typenow = '<?php echo esc_js( $current_screen->post_type ); ?>',
adminpage = '<?php echo esc_js( $admin_body_class ); ?>',
thousandsSeparator = '<?php echo esc_js( $wp_locale->number_format['thousands_sep'] ); ?>',
decimalPoint = '<?php echo esc_js( $wp_locale->number_format['decimal_point'] ); ?>',
isRtl = <?php echo (int) is_rtl(); ?>;
</script>
<?php
@ -198,11 +198,19 @@ if ( $current_screen->is_block_editor() ) {
}
}
$error_get_last = error_get_last();
// Print a CSS class to make PHP errors visible.
if ( error_get_last() && WP_DEBUG && WP_DEBUG_DISPLAY && ini_get( 'display_errors' ) ) {
if ( $error_get_last && WP_DEBUG && WP_DEBUG_DISPLAY && ini_get( 'display_errors' )
// Don't print the class for PHP notices in wp-config.php, as they happen before WP_DEBUG takes effect,
// and should not be displayed with the `error_reporting` level previously set in wp-load.php.
&& ( E_NOTICE !== $error_get_last['type'] || 'wp-config.php' !== wp_basename( $error_get_last['file'] ) )
) {
$admin_body_class .= ' php-error';
}
unset( $error_get_last );
?>
</head>
<?php

View File

@ -36,14 +36,18 @@ if ( isset( $_GET['dt'] ) ) {
}
}
$comment_id = absint( $_GET['c'] );
$comment = get_comment( $comment_id );
if ( isset( $_REQUEST['c'] ) ) {
$comment_id = absint( $_REQUEST['c'] );
$comment = get_comment( $comment_id );
// Prevent actions on a comment associated with a trashed post.
if ( 'trash' === get_post_status( $comment->comment_post_ID ) ) {
wp_die(
__( 'You can&#8217;t edit this comment because the associated post is in the Trash. Please restore the post first, then try again.' )
);
// Prevent actions on a comment associated with a trashed post.
if ( $comment && 'trash' === get_post_status( $comment->comment_post_ID ) ) {
wp_die(
__( 'You can&#8217;t edit this comment because the associated post is in the Trash. Please restore the post first, then try again.' )
);
}
} else {
$comment = null;
}
switch ( $action ) {

View File

@ -74,10 +74,6 @@ $credits = wp_credits();
<?php endif; ?>
</div>
<div class="about__image aligncenter">
<img src="data:image/svg+xml;charset=utf8,%3Csvg width='1000' height='300' viewbox='0 0 1000 300' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23F3F4F5' d='M0 0h1000v300H0z'/%3E%3Cpath style='mix-blend-mode:multiply' d='M39.6 140.22l931.1 3.36.8 76.5-929.5 6.6-2.4-86.46z' fill='%23216DD2'/%3E%3Cpath style='mix-blend-mode:multiply' d='M963.7 275.14s-.9-59.58-1-64.14c-.1-4.2-932.3 1.74-932.3 1.74L29 268.48v8.4' fill='%237FCDE6'/%3E%3Cpath style='mix-blend-mode:multiply' d='M958 73.32L47.8 70.26l1.2 78.66 907.3 4.26 1.7-79.86z' fill='%23072CF0'/%3E%3Cpath style='mix-blend-mode:multiply' d='M34 91.32l910.4-2.16L939.2 21 33.3 23.82l.7 67.5z' fill='%230188D9'/%3E%3C/svg%3E" alt="" />
</div>
</div>
<?php

View File

@ -20,7 +20,7 @@
.about__container {
/* Section backgrounds */
--background: #f3f4f5;
--background: #fff;
--subtle-background: #f2edd4;
/* Main text color */
--text: #322d2b;
@ -28,10 +28,10 @@
/* Accent colors: used in header, on special classes. */
--accent-1: #ebcd3d; /* Accent background */
--accent-2: #bd7331;
--accent-3: #bc5131;
--accent-3: #b04329;
/* Navigation colors. */
--nav-background: var( --subtle-background );
--nav-border: var( --accent-1 );
--nav-background: var(--subtle-background);
--nav-border: var(--accent-1);
--nav-color: var(--accent-3);
--nav-current: var(--accent-3);
}
@ -98,7 +98,7 @@
}
.about__section {
background: #f3f4f5;
background: #fff;
background: var(--background);
clear: both;
}
@ -108,13 +108,12 @@
background-color: var(--accent-1);
}
.about__container .has-transparent-background-color {
background-color: transparent;
}
.about__container .has-accent-color {
color: #bc5131;
color: #b04329;
color: var(--accent-3);
}
@ -182,6 +181,12 @@
margin-top: 1rem;
}
.about__section.has-1-column {
margin-left: auto;
margin-right: auto;
max-width: 36em;
}
.about__section.has-2-columns,
.about__section.has-3-columns,
.about__section.has-4-columns {
@ -289,6 +294,8 @@
}
@media screen and (max-width: 782px) {
.about__section.has-2-columns.is-wider-right,
.about__section.has-2-columns.is-wider-left,
.about__section.has-3-columns,
.about__section.has-4-columns {
display: block;
@ -313,7 +320,6 @@
.about__section.has-2-columns .column:nth-of-type(n) {
padding-top: 16px;
padding-bottom: 16px;
width: 100%;
}
.about__section.has-2-columns .is-edge-to-edge {
@ -353,7 +359,7 @@
}
.about__section a {
color: #bc5131;
color: #b04329;
color: var(--accent-3);
text-decoration: underline;
}
@ -383,16 +389,12 @@
.about__container img {
margin: 0;
max-width: 100%;
vertical-align: middle;
}
.about__container .about__image {
display: -ms-grid;
display: grid;
align-items: center;
justify-content: center;
height: 100%;
overflow: hidden;
margin: 0;
}
.about__container .about__image img {
@ -401,6 +403,15 @@
height: auto;
}
.about__container .about__image .wp-video {
margin-left: auto;
margin-right: auto;
}
.about__container .about__image + h3 {
margin-top: 1.5em;
}
.about__container hr {
margin: 0;
height: 32px;
@ -437,7 +448,7 @@
/* 1.3 - Header */
.about__header {
padding-top: 10vh;
padding-top: 8em;
margin-bottom: 32px;
background-color: #ebcd3d;
background-color: var(--accent-1);
@ -447,10 +458,13 @@
.about__header-title {
display: flex;
align-items: flex-start;
align-items: center;
justify-content: center;
height: 20vh;
max-height: 16em;
padding: 32px;
margin-bottom: 4em;
text-align: center;
padding: 10vh 32px 15vh;
}
.about__header-title p {
@ -472,7 +486,7 @@
padding: 16px 48px;
font-size: 1.5em;
line-height: 1.4;
background: #bc5131;
background: #b04329;
background: var(--accent-3);
color: #f2edd4;
color: var(--text-light);
@ -483,10 +497,11 @@
}
.about__header-navigation {
clear: both;
padding-top: 0;
background: #f2edd4;
background: var(--nav-background);
color: #bc5131;
color: #b04329;
color: var(--nav-color);
border-bottom: 3px solid #ebcd3d;
border-bottom: 3px solid var(--nav-border);
@ -515,7 +530,7 @@
.about__header-navigation .nav-tab-active {
margin-bottom: -3px;
border-width: 0 0 6px;
border-color: #bc5131;
border-color: #b04329;
border-color: var(--nav-current);
}
@ -525,7 +540,7 @@
background-color: var(--text);
color: #f2edd4;
color: var(--text-light);
border-color: #bc5131;
border-color: #b04329;
border-color: var(--nav-current);
}

View File

@ -6,9 +6,4 @@ $notification-color: $highlight-color;
$link: $highlight-color;
$link-focus: darken($highlight-color, 10%);
@import "../_admin.scss";
#adminmenu .wp-submenu, #adminmenu .wp-has-current-submenu .wp-submenu, #adminmenu .wp-has-current-submenu.opensub .wp-submenu, .folded #adminmenu .wp-has-current-submenu .wp-submenu, #adminmenu a.wp-has-current-submenu:focus + .wp-submenu {
padding-bottom: 12px;
}

View File

@ -29,6 +29,46 @@
overflow: visible;
}
/* inner 2 column liquid layout */
.inner-sidebar {
float: right;
clear: right;
display: none;
width: 281px;
position: relative;
}
.columns-2 .inner-sidebar {
margin-right: auto;
width: 286px;
display: block;
}
.inner-sidebar #side-sortables,
.columns-2 .inner-sidebar #side-sortables {
min-height: 300px;
width: 280px;
padding: 0;
}
.has-right-sidebar .inner-sidebar {
display: block;
}
.has-right-sidebar #post-body {
float: left;
clear: left;
width: 100%;
margin-right: -2000px;
}
.has-right-sidebar #post-body-content {
margin-right: 300px;
float: none;
width: auto;
}
/* 2 columns main area */
#col-left {
@ -1945,9 +1985,9 @@ html.wp-toolbar {
padding-top: 10px;
}
.metabox-holder .postbox-container .empty-container {
outline: 3px dashed #b4b9be;
height: 250px;
.metabox-holder .postbox-container .meta-box-sortables {
/* The jQuery UI Sortables need some initial height to work properly. */
min-height: 1px;
position: relative;
}

View File

@ -54,6 +54,11 @@
margin: 0 8px 20px;
}
#dashboard-widgets .postbox-container .empty-container {
outline: 3px dashed #b4b9be;
height: 250px;
}
/* Only highlight drop zones when dragging and only in the 2 columns layout. */
.is-dragging-metaboxes #dashboard-widgets .meta-box-sortables {
outline: 3px dashed #606a73;

View File

@ -148,25 +148,8 @@ body.post-new-php .submitbox .submitdelete {
/* Post Screen */
/* Only target the sortables in the post screen excluding the ones in the Dashboard. */
#post-body .meta-box-sortables {
/* Required min-height to make the jQuery UI Sortable drop zone work. */
min-height: 1px;
}
/* Resets height and outline inherited from common.css. */
#post-body.columns-1 #side-sortables.empty-container,
#post-body #normal-sortables.empty-container,
#post-body #advanced-sortables.empty-container {
/* Sortables need some initial height to work correctly. */
height: 1px;
outline: none;
}
/* Only highlight drop zones when dragging and only in the 2 columns layout. */
.is-dragging-metaboxes #post-body.columns-2 #side-sortables,
.is-dragging-metaboxes #post-body #normal-sortables,
.is-dragging-metaboxes #post-body #advanced-sortables {
.is-dragging-metaboxes .metabox-holder .postbox-container .meta-box-sortables {
outline: 3px dashed #606a73;
/* Prevent margin on the child from collapsing with margin on the parent. */
display: flow-root;
@ -1542,7 +1525,6 @@ table.links-table {
#poststuff #postbox-container-1 .empty-container,
#poststuff #postbox-container-1 #side-sortables:empty {
outline: none;
height: 0;
min-height: 0;
}
@ -1552,6 +1534,15 @@ table.links-table {
width: auto;
}
/* Increase min-height while dragging for the #side-sortables and any potential sortables area with custom ID. */
.is-dragging-metaboxes #poststuff #postbox-container-1 .empty-container,
.is-dragging-metaboxes #poststuff #postbox-container-1 #side-sortables:empty,
.is-dragging-metaboxes #poststuff #post-body.columns-2 #side-sortables,
.is-dragging-metaboxes #poststuff #post-body.columns-2 .meta-box-sortables {
height: auto;
min-height: 60px;
}
/* hide the radio buttons for column prefs */
.screen-layout,
.columns-prefs {

View File

@ -2604,10 +2604,11 @@ function wp_ajax_image_editor() {
include_once ABSPATH . 'wp-admin/includes/image-edit.php';
$msg = false;
switch ( $_POST['do'] ) {
case 'save':
$msg = wp_save_image( $attachment_id );
if ( $msg->error ) {
if ( ! empty( $msg->error ) ) {
wp_send_json_error( $msg );
}
@ -2625,7 +2626,7 @@ function wp_ajax_image_editor() {
wp_image_editor( $attachment_id, $msg );
$html = ob_get_clean();
if ( $msg->error ) {
if ( ! empty( $msg->error ) ) {
wp_send_json_error(
array(
'message' => $msg,

View File

@ -581,6 +581,8 @@ class Custom_Background {
* @deprecated 3.5.0
*/
public function wp_set_background_image() {
check_ajax_referer( 'custom-background' );
if ( ! current_user_can( 'edit_theme_options' ) || ! isset( $_POST['attachment_id'] ) ) {
exit;
}

View File

@ -343,7 +343,7 @@ class Custom_Image_Header {
?>
<script type="text/javascript">
(function($){
var default_color = '<?php echo $default_color; ?>',
var default_color = '<?php echo esc_js( $default_color ); ?>',
header_text_fields;
function pickColor(color) {

View File

@ -64,9 +64,6 @@ class Plugin_Upgrader extends WP_Upgrader {
$this->strings['process_failed'] = __( 'Plugin update failed.' );
$this->strings['process_success'] = __( 'Plugin updated successfully.' );
$this->strings['process_bulk_success'] = __( 'Plugins updated successfully.' );
/* translators: 1: Plugin name, 2: Plugin version. */
$this->strings['process_success_specific'] = __( 'Successfully installed the plugin <strong>%1$s %2$s</strong>.' );
}
/**
@ -85,6 +82,8 @@ class Plugin_Upgrader extends WP_Upgrader {
$this->strings['no_files'] = __( 'The plugin contains no files.' );
$this->strings['process_failed'] = __( 'Plugin installation failed.' );
$this->strings['process_success'] = __( 'Plugin installed successfully.' );
/* translators: 1: Plugin name, 2: Plugin version. */
$this->strings['process_success_specific'] = __( 'Successfully installed the plugin <strong>%1$s %2$s</strong>.' );
if ( ! empty( $this->skin->overwrite ) ) {
if ( 'update-plugin' === $this->skin->overwrite ) {
@ -127,6 +126,7 @@ class Plugin_Upgrader extends WP_Upgrader {
$this->install_strings();
add_filter( 'upgrader_source_selection', array( $this, 'check_package' ) );
if ( $parsed_args['clear_update_cache'] ) {
// Clear cache so wp_update_plugins() knows about the new plugin.
add_action( 'upgrader_process_complete', 'wp_clean_plugins_cache', 9, 0 );

View File

@ -206,7 +206,9 @@ class Theme_Installer_Skin extends WP_Upgrader_Skin {
$all_themes = wp_get_themes( array( 'errors' => null ) );
foreach ( $all_themes as $theme ) {
if ( rtrim( $theme->get_stylesheet_directory(), '/' ) !== $folder ) {
$stylesheet_dir = wp_normalize_path( $theme->get_stylesheet_directory() );
if ( rtrim( $stylesheet_dir, '/' ) !== $folder ) {
continue;
}

View File

@ -163,7 +163,7 @@ class Theme_Upgrader extends WP_Upgrader {
// Override them.
$this->skin->api = $api;
$this->strings['process_success_specific'] = $this->strings['parent_theme_install_success']; //, $api->name, $api->version );
$this->strings['process_success_specific'] = $this->strings['parent_theme_install_success'];
$this->skin->feedback( 'parent_theme_prepare_install', $api->name, $api->version );
@ -239,6 +239,7 @@ class Theme_Upgrader extends WP_Upgrader {
add_filter( 'upgrader_source_selection', array( $this, 'check_package' ) );
add_filter( 'upgrader_post_install', array( $this, 'check_parent_theme_filter' ), 10, 3 );
if ( $parsed_args['clear_update_cache'] ) {
// Clear cache so wp_update_themes() knows about the new theme.
add_action( 'upgrader_process_complete', 'wp_clean_themes_cache', 9, 0 );
@ -248,7 +249,7 @@ class Theme_Upgrader extends WP_Upgrader {
array(
'package' => $package,
'destination' => get_theme_root(),
'clear_destination' => $args['overwrite_package'],
'clear_destination' => $parsed_args['overwrite_package'],
'clear_working' => true,
'hook_extra' => array(
'type' => 'theme',

View File

@ -81,11 +81,11 @@ class Walker_Category_Checklist extends Walker {
$name = 'tax_input[' . $taxonomy . ']';
}
$args['popular_cats'] = empty( $args['popular_cats'] ) ? array() : $args['popular_cats'];
$args['popular_cats'] = ! empty( $args['popular_cats'] ) ? array_map( 'intval', $args['popular_cats'] ) : array();
$class = in_array( $category->term_id, $args['popular_cats'], true ) ? ' class="popular-category"' : '';
$args['selected_cats'] = empty( $args['selected_cats'] ) ? array() : $args['selected_cats'];
$args['selected_cats'] = ! empty( $args['selected_cats'] ) ? array_map( 'intval', $args['selected_cats'] ) : array();
if ( ! empty( $args['list_only'] ) ) {
$aria_checked = 'false';

View File

@ -170,11 +170,21 @@ class WP_Automatic_Updater {
$update = ! empty( $item->autoupdate );
}
// If the `disable_autoupdate` flag is set, override any user-choice, but allow filters.
if ( ! empty( $item->disable_autoupdate ) ) {
$update = $item->disable_autoupdate;
}
/**
* Filters whether to automatically update core, a plugin, a theme, or a language.
*
* The dynamic portion of the hook name, `$type`, refers to the type of update
* being checked. Can be 'core', 'theme', 'plugin', or 'translation'.
* being checked. Potential hook names include:
*
* - `auto_update_core`
* - `auto_update_plugin`
* - `auto_update_theme`
* - `auto_update_translation`
*
* Generally speaking, plugins, themes, and major core versions are not updated
* by default, while translations and minor and development versions for core
@ -185,9 +195,11 @@ class WP_Automatic_Updater {
* adjust core updates.
*
* @since 3.7.0
* @since 5.5.0 The `$update` parameter accepts the value of null.
*
* @param bool $update Whether to update.
* @param object $item The update offer.
* @param bool|null $update Whether to update. The value of null is internally used
* to detect whether nothing has hooked into this filter.
* @param object $item The update offer.
*/
$update = apply_filters( "auto_update_{$type}", $update, $item );
@ -869,46 +881,54 @@ class WP_Automatic_Updater {
*
* @since 5.5.0
*
* @param array $update_results The result of updates tasks.
* @param array $update_results The results of update tasks.
*/
protected function after_plugin_theme_update( $update_results ) {
$successful_updates = array();
$failed_updates = array();
/**
* Filters whether to send an email following an automatic background plugin update.
*
* @since 5.5.0
*
* @param bool $enabled True if plugins notifications are enabled, false otherwise.
*/
$notifications_enabled = apply_filters( 'auto_plugin_update_send_email', true );
if ( ! empty( $update_results['plugin'] ) ) {
/**
* Filters whether to send an email following an automatic background plugin update.
*
* @since 5.5.0
* @since 5.5.1 Added the `$update_results` parameter.
*
* @param bool $enabled True if plugin update notifications are enabled, false otherwise.
* @param array $update_results The results of plugins update tasks.
*/
$notifications_enabled = apply_filters( 'auto_plugin_update_send_email', true, $update_results['plugin'] );
if ( ! empty( $update_results['plugin'] ) && $notifications_enabled ) {
foreach ( $update_results['plugin'] as $update_result ) {
if ( true === $update_result->result ) {
$successful_updates['plugin'][] = $update_result;
} else {
$failed_updates['plugin'][] = $update_result;
if ( $notifications_enabled ) {
foreach ( $update_results['plugin'] as $update_result ) {
if ( true === $update_result->result ) {
$successful_updates['plugin'][] = $update_result;
} else {
$failed_updates['plugin'][] = $update_result;
}
}
}
}
/**
* Filters whether to send an email following an automatic background theme update.
*
* @since 5.5.0
*
* @param bool $enabled True if notifications are enabled, false otherwise.
*/
$notifications_enabled = apply_filters( 'auto_theme_update_send_email', true );
if ( ! empty( $update_results['theme'] ) ) {
/**
* Filters whether to send an email following an automatic background theme update.
*
* @since 5.5.0
* @since 5.5.1 Added the `$update_results` parameter.
*
* @param bool $enabled True if theme update notifications are enabled, false otherwise.
* @param array $update_results The results of theme update tasks.
*/
$notifications_enabled = apply_filters( 'auto_theme_update_send_email', true, $update_results['theme'] );
if ( ! empty( $update_results['theme'] ) && $notifications_enabled ) {
foreach ( $update_results['theme'] as $update_result ) {
if ( true === $update_result->result ) {
$successful_updates['theme'][] = $update_result;
} else {
$failed_updates['theme'][] = $update_result;
if ( $notifications_enabled ) {
foreach ( $update_results['theme'] as $update_result ) {
if ( true === $update_result->result ) {
$successful_updates['theme'][] = $update_result;
} else {
$failed_updates['theme'][] = $update_result;
}
}
}
}

View File

@ -77,6 +77,8 @@ class WP_Community_Events {
* mitigates possible privacy concerns.
*
* @since 4.8.0
* @since 5.5.2 Response no longer contains formatted date field. They're added
* in `wp.communityEvents.populateDynamicEventFields()` now.
*
* @param string $location_search Optional. City name to help determine the location.
* e.g., "Seattle". Default empty string.
@ -158,10 +160,13 @@ class WP_Community_Events {
$response_body['location']['description'] = $this->user_location['description'];
}
/*
* Store the raw response, because events will expire before the cache does.
* The response will need to be processed every page load.
*/
$this->cache_events( $response_body, $expiration );
$response_body = $this->trim_events( $response_body );
$response_body = $this->format_event_data_time( $response_body );
$response_body['events'] = $this->trim_events( $response_body['events'] );
return $response_body;
}
@ -340,15 +345,20 @@ class WP_Community_Events {
* Gets cached events.
*
* @since 4.8.0
* @since 5.5.2 Response no longer contains formatted date field. They're added
* in `wp.communityEvents.populateDynamicEventFields()` now.
*
* @return array|false An array containing `location` and `events` items
* on success, false on failure.
*/
public function get_cached_events() {
$cached_response = get_site_transient( $this->get_events_transient_key( $this->user_location ) );
$cached_response = $this->trim_events( $cached_response );
return $this->format_event_data_time( $cached_response );
if ( isset( $cached_response['events'] ) ) {
$cached_response['events'] = $this->trim_events( $cached_response['events'] );
}
return $cached_response;
}
/**
@ -360,11 +370,18 @@ class WP_Community_Events {
* of the user who triggered the cache refresh, rather than their own.
*
* @since 4.8.0
* @deprecated 5.6.0 No longer used in core.
*
* @param array $response_body The response which contains the events.
* @return array The response with dates and times formatted.
*/
protected function format_event_data_time( $response_body ) {
_deprecated_function(
__METHOD__,
'5.5.2',
'This is no longer used by core, and only kept for backward compatibility.'
);
if ( isset( $response_body['events'] ) ) {
foreach ( $response_body['events'] as $key => $event ) {
$timestamp = strtotime( $event['date'] );
@ -435,44 +452,44 @@ class WP_Community_Events {
*
* @since 4.8.0
* @since 4.9.7 Stick a WordCamp to the final list.
* @since 5.5.2 Accepts and returns only the events, rather than an entire HTTP response.
*
* @param array $response_body The response body which contains the events.
* @param array $events The events that will be prepared.
* @return array The response body with events trimmed.
*/
protected function trim_events( $response_body ) {
if ( isset( $response_body['events'] ) ) {
$wordcamps = array();
$today = current_time( 'Y-m-d' );
protected function trim_events( array $events ) {
$future_events = array();
foreach ( $response_body['events'] as $key => $event ) {
/*
* Skip WordCamps, because they might be multi-day events.
* Save a copy so they can be pinned later.
*/
if ( 'wordcamp' === $event['type'] ) {
$wordcamps[] = $event;
continue;
}
foreach ( $events as $event ) {
/*
* The API's `date` and `end_date` fields are in the _event's_ local timezone, but UTC is needed so
* it can be converted to the _user's_ local time.
*/
$end_time = (int) $event['end_unix_timestamp'];
// We don't get accurate time with timezone from API, so we only take the date part (Y-m-d).
$event_date = substr( $event['date'], 0, 10 );
if ( $today > $event_date ) {
unset( $response_body['events'][ $key ] );
}
}
$response_body['events'] = array_slice( $response_body['events'], 0, 3 );
$trimmed_event_types = wp_list_pluck( $response_body['events'], 'type' );
// Make sure the soonest upcoming WordCamp is pinned in the list.
if ( ! in_array( 'wordcamp', $trimmed_event_types, true ) && $wordcamps ) {
array_pop( $response_body['events'] );
array_push( $response_body['events'], $wordcamps[0] );
if ( time() < $end_time ) {
array_push( $future_events, $event );
}
}
return $response_body;
$future_wordcamps = array_filter(
$future_events,
function( $wordcamp ) {
return 'wordcamp' === $wordcamp['type'];
}
);
$future_wordcamps = array_values( $future_wordcamps ); // Remove gaps in indices.
$trimmed_events = array_slice( $future_events, 0, 3 );
$trimmed_event_types = wp_list_pluck( $trimmed_events, 'type' );
// Make sure the soonest upcoming WordCamp is pinned in the list.
if ( $future_wordcamps && ! in_array( 'wordcamp', $trimmed_event_types, true ) ) {
array_pop( $trimmed_events );
array_push( $trimmed_events, $future_wordcamps[0] );
}
return $trimmed_events;
}
/**

View File

@ -39,10 +39,11 @@ class WP_Debug_Data {
$upload_dir = wp_upload_dir();
$permalink_structure = get_option( 'permalink_structure' );
$is_ssl = is_ssl();
$is_multisite = is_multisite();
$users_can_register = get_option( 'users_can_register' );
$blog_public = get_option( 'blog_public' );
$default_comment_status = get_option( 'default_comment_status' );
$is_multisite = is_multisite();
$environment_type = wp_get_environment_type();
$core_version = get_bloginfo( 'version' );
$core_updates = get_core_updates();
$core_update_needed = '';
@ -99,6 +100,11 @@ class WP_Debug_Data {
'value' => $is_ssl ? __( 'Yes' ) : __( 'No' ),
'debug' => $is_ssl,
),
'multisite' => array(
'label' => __( 'Is this a multisite?' ),
'value' => $is_multisite ? __( 'Yes' ) : __( 'No' ),
'debug' => $is_multisite,
),
'user_registration' => array(
'label' => __( 'Can anyone register on this site?' ),
'value' => $users_can_register ? __( 'Yes' ) : __( 'No' ),
@ -114,10 +120,10 @@ class WP_Debug_Data {
'value' => 'open' === $default_comment_status ? _x( 'Open', 'comment status' ) : _x( 'Closed', 'comment status' ),
'debug' => $default_comment_status,
),
'multisite' => array(
'label' => __( 'Is this a multisite?' ),
'value' => $is_multisite ? __( 'Yes' ) : __( 'No' ),
'debug' => $is_multisite,
'environment_type' => array(
'label' => __( 'Environment type' ),
'value' => $environment_type,
'debug' => $environment_type,
),
),
);
@ -531,10 +537,10 @@ class WP_Debug_Data {
);
} else {
// Get the PHP ini directive values.
$post_max_size = ini_get( 'post_max_size' );
$upload_max_size = ini_get( 'upload_max_filesize' );
$max_file_uploads = ini_get( 'max_file_uploads' );
$effective = min( wp_convert_hr_to_bytes( $post_max_size ), wp_convert_hr_to_bytes( $upload_max_size ) );
$post_max_size = ini_get( 'post_max_size' );
$upload_max_filesize = ini_get( 'upload_max_filesize' );
$max_file_uploads = ini_get( 'max_file_uploads' );
$effective = min( wp_convert_hr_to_bytes( $post_max_size ), wp_convert_hr_to_bytes( $upload_max_filesize ) );
// Add info in Media section.
$info['wp-media']['fields']['file_uploads'] = array(
@ -548,7 +554,7 @@ class WP_Debug_Data {
);
$info['wp-media']['fields']['upload_max_filesize'] = array(
'label' => __( 'Max size of an uploaded file' ),
'value' => $upload_max_size,
'value' => $upload_max_filesize,
);
$info['wp-media']['fields']['max_effective_size'] = array(
'label' => __( 'Max effective file size' ),
@ -711,15 +717,15 @@ class WP_Debug_Data {
);
}
$info['wp-server']['fields']['max_input_time'] = array(
$info['wp-server']['fields']['max_input_time'] = array(
'label' => __( 'Max input time' ),
'value' => ini_get( 'max_input_time' ),
);
$info['wp-server']['fields']['upload_max_size'] = array(
$info['wp-server']['fields']['upload_max_filesize'] = array(
'label' => __( 'Upload max filesize' ),
'value' => ini_get( 'upload_max_filesize' ),
);
$info['wp-server']['fields']['php_post_max_size'] = array(
$info['wp-server']['fields']['php_post_max_size'] = array(
'label' => __( 'PHP post max size' ),
'value' => ini_get( 'post_max_size' ),
);
@ -905,7 +911,9 @@ class WP_Debug_Data {
// List all available plugins.
$plugins = get_plugins();
$plugin_updates = get_plugin_updates();
$auto_updates = array();
$transient = get_site_transient( 'update_plugins' );
$auto_updates = array();
$auto_updates_enabled = wp_is_auto_update_enabled_for_type( 'plugin' );
@ -947,28 +955,56 @@ class WP_Debug_Data {
}
if ( $auto_updates_enabled ) {
if ( in_array( $plugin_path, $auto_updates, true ) ) {
$auto_updates_string = __( 'Auto-updates enabled' );
$enabled = true;
if ( isset( $transient->response[ $plugin_path ] ) ) {
$item = $transient->response[ $plugin_path ];
} elseif ( isset( $transient->no_update[ $plugin_path ] ) ) {
$item = $transient->no_update[ $plugin_path ];
} else {
$item = array(
'id' => $plugin_path,
'slug' => '',
'plugin' => $plugin_path,
'new_version' => '',
'url' => '',
'package' => '',
'icons' => array(),
'banners' => array(),
'banners_rtl' => array(),
'tested' => '',
'requires_php' => '',
'compatibility' => new stdClass(),
);
$item = array_merge( $item, array_intersect_key( $plugin, $item ) );
}
/**
* Filters the text string of the auto-updates setting for each plugin in the Site Health debug data.
*
* @since 5.5.0
*
* @param string $auto_updates_string The string output for the auto-updates column.
* @param array $plugin An array of plugin data.
* @param bool $enabled Whether auto-updates are enabled for this item.
*/
$auto_updates_string = apply_filters( 'plugin_auto_update_debug_string', $auto_updates_string, $plugin, $enabled );
$type = 'plugin';
/** This filter is documented in wp-admin/includes/class-wp-automatic-updater.php */
$auto_update_forced = apply_filters( "auto_update_{$type}", null, (object) $item );
if ( ! is_null( $auto_update_forced ) ) {
$enabled = $auto_update_forced;
} else {
$enabled = in_array( $plugin_path, $auto_updates, true );
}
if ( $enabled ) {
$auto_updates_string = __( 'Auto-updates enabled' );
} else {
$auto_updates_string = __( 'Auto-updates disabled' );
$enabled = false;
/** This filter is documented in wp-admin/includes/class-wp-debug-data.php */
$auto_updates_string = apply_filters( 'plugin_auto_update_debug_string', $auto_updates_string, $plugin, $enabled );
}
/**
* Filters the text string of the auto-updates setting for each plugin in the Site Health debug data.
*
* @since 5.5.0
*
* @param string $auto_updates_string The string output for the auto-updates column.
* @param string $plugin_path The path to the plugin file.
* @param array $plugin An array of plugin data.
* @param bool $enabled Whether auto-updates are enabled for this item.
*/
$auto_updates_string = apply_filters( 'plugin_auto_update_debug_string', $auto_updates_string, $plugin_path, $plugin, $enabled );
$plugin_version_string .= ' | ' . $auto_updates_string;
$plugin_version_string_debug .= ', ' . $auto_updates_string;
}
@ -992,6 +1028,7 @@ class WP_Debug_Data {
$active_theme = wp_get_theme();
$theme_updates = get_theme_updates();
$transient = get_site_transient( 'update_themes' );
$active_theme_version = $active_theme->version;
$active_theme_version_debug = $active_theme_version;
@ -1069,28 +1106,40 @@ class WP_Debug_Data {
);
if ( $auto_updates_enabled ) {
if ( in_array( $active_theme->stylesheet, $auto_updates, true ) ) {
$auto_updates_string = __( 'Enabled' );
$enabled = true;
if ( isset( $transient->response[ $active_theme->stylesheet ] ) ) {
$item = $transient->response[ $active_theme->stylesheet ];
} elseif ( isset( $transient->no_update[ $active_theme->stylesheet ] ) ) {
$item = $transient->no_update[ $active_theme->stylesheet ];
} else {
$item = array(
'theme' => $active_theme->stylesheet,
'new_version' => $active_theme->version,
'url' => '',
'package' => '',
'requires' => '',
'requires_php' => '',
);
}
/**
* Filters the text string of the auto-updates setting for each theme in the Site Health debug data.
*
* @since 5.5.0
*
* @param string $auto_updates_string The string output for the auto-updates column.
* @param WP_Theme $theme An object of theme data.
* @param bool $enabled Whether auto-updates are enabled for this item.
*/
$auto_updates_string = apply_filters( 'theme_auto_update_debug_string', $auto_updates_string, $active_theme, $enabled );
$type = 'theme';
/** This filter is documented in wp-admin/includes/class-wp-automatic-updater.php */
$auto_update_forced = apply_filters( "auto_update_{$type}", null, (object) $item );
if ( ! is_null( $auto_update_forced ) ) {
$enabled = $auto_update_forced;
} else {
$enabled = in_array( $active_theme->stylesheet, $auto_updates, true );
}
if ( $enabled ) {
$auto_updates_string = __( 'Enabled' );
} else {
$auto_updates_string = __( 'Disabled' );
$enabled = false;
/** This filter is documented in wp-admin/includes/class-wp-debug-data.php */
$auto_updates_string = apply_filters( 'theme_auto_update_debug_string', $auto_updates_string, $active_theme, $enabled );
}
/** This filter is documented in wp-admin/includes/class-wp-debug-data.php */
$auto_updates_string = apply_filters( 'theme_auto_update_debug_string', $auto_updates_string, $active_theme, $enabled );
$info['wp-active-theme']['fields']['auto_update'] = array(
'label' => __( 'Auto-updates' ),
'value' => $auto_updates_string,
@ -1143,13 +1192,42 @@ class WP_Debug_Data {
'value' => get_template_directory(),
),
);
if ( $auto_updates_enabled ) {
if ( in_array( $parent_theme->stylesheet, $auto_updates, true ) ) {
if ( isset( $transient->response[ $parent_theme->stylesheet ] ) ) {
$item = $transient->response[ $parent_theme->stylesheet ];
} elseif ( isset( $transient->no_update[ $parent_theme->stylesheet ] ) ) {
$item = $transient->no_update[ $parent_theme->stylesheet ];
} else {
$item = array(
'theme' => $parent_theme->stylesheet,
'new_version' => $parent_theme->version,
'url' => '',
'package' => '',
'requires' => '',
'requires_php' => '',
);
}
$type = 'theme';
/** This filter is documented in wp-admin/includes/class-wp-automatic-updater.php */
$auto_update_forced = apply_filters( "auto_update_{$type}", null, (object) $item );
if ( ! is_null( $auto_update_forced ) ) {
$enabled = $auto_update_forced;
} else {
$enabled = in_array( $parent_theme->stylesheet, $auto_updates, true );
}
if ( $enabled ) {
$parent_theme_auto_update_string = __( 'Enabled' );
} else {
$parent_theme_auto_update_string = __( 'Disabled' );
}
/** This filter is documented in wp-admin/includes/class-wp-debug-data.php */
$parent_theme_auto_update_string = apply_filters( 'theme_auto_update_debug_string', $auto_updates_string, $parent_theme, $enabled );
$info['wp-parent-theme']['fields']['auto_update'] = array(
'label' => __( 'Auto-update' ),
'value' => $parent_theme_auto_update_string,
@ -1206,20 +1284,48 @@ class WP_Debug_Data {
}
if ( $auto_updates_enabled ) {
if ( in_array( $theme_slug, $auto_updates, true ) ) {
$auto_updates_string = __( 'Auto-updates enabled' );
$enabled = true;
if ( isset( $transient->response[ $theme_slug ] ) ) {
$item = $transient->response[ $theme_slug ];
} elseif ( isset( $transient->no_update[ $theme_slug ] ) ) {
$item = $transient->no_update[ $theme_slug ];
} else {
$item = array(
'theme' => $theme_slug,
'new_version' => $theme->version,
'url' => '',
'package' => '',
'requires' => '',
'requires_php' => '',
);
}
/** This filter is documented in wp-admin/includes/class-wp-debug-data.php */
$auto_updates_string = apply_filters( 'theme_auto_update_debug_string', $auto_updates_string, $theme, $enabled );
$type = 'theme';
/** This filter is documented in wp-admin/includes/class-wp-automatic-updater.php */
$auto_update_forced = apply_filters( "auto_update_{$type}", null, (object) $item );
if ( ! is_null( $auto_update_forced ) ) {
$enabled = $auto_update_forced;
} else {
$enabled = in_array( $theme_slug, $auto_updates, true );
}
if ( $enabled ) {
$auto_updates_string = __( 'Auto-updates enabled' );
} else {
$auto_updates_string = __( 'Auto-updates disabled' );
$enabled = false;
/** This filter is documented in wp-admin/includes/class-wp-debug-data.php */
$auto_updates_string = apply_filters( 'theme_auto_update_debug_string', $auto_updates_string, $theme, $enabled );
}
/**
* Filters the text string of the auto-updates setting for each theme in the Site Health debug data.
*
* @since 5.5.0
*
* @param string $auto_updates_string The string output for the auto-updates column.
* @param WP_Theme $theme An object of theme data.
* @param bool $enabled Whether auto-updates are enabled for this item.
*/
$auto_updates_string = apply_filters( 'theme_auto_update_debug_string', $auto_updates_string, $theme, $enabled );
$theme_version_string .= ' | ' . $auto_updates_string;
$theme_version_string_debug .= ',' . $auto_updates_string;
}

View File

@ -156,7 +156,7 @@ class WP_Filesystem_FTPext extends WP_Filesystem_Base {
$contents .= fread( $temphandle, 8 * KB_IN_BYTES );
}
fclose( $temphangle );
fclose( $temphandle );
unlink( $tempfile );
return $contents;

View File

@ -477,7 +477,7 @@ class WP_List_Table {
echo "</select>\n";
submit_button( __( 'Apply' ), 'action', "doaction$two", false, array( 'id' => "doaction$two" ) );
submit_button( __( 'Apply' ), 'action', '', false, array( 'id' => "doaction$two" ) );
echo "\n";
}
@ -493,14 +493,14 @@ class WP_List_Table {
return false;
}
if ( isset( $_REQUEST['doaction2'] ) && isset( $_REQUEST['action2'] ) && -1 != $_REQUEST['action2'] ) {
return $_REQUEST['action2'];
}
if ( isset( $_REQUEST['action'] ) && -1 != $_REQUEST['action'] ) {
return $_REQUEST['action'];
}
if ( isset( $_REQUEST['action2'] ) && -1 != $_REQUEST['action2'] ) {
return $_REQUEST['action2'];
}
return false;
}

View File

@ -151,11 +151,54 @@ class WP_MS_Themes_List_Table extends WP_List_Table {
$filter = $theme->is_allowed( $allowed_where, $this->site_id ) ? 'enabled' : 'disabled';
$themes[ $filter ][ $key ] = $themes['all'][ $key ];
$theme_data = array(
'update_supported' => isset( $theme->update_supported ) ? $theme->update_supported : true,
);
// Extra info if known. array_merge() ensures $theme_data has precedence if keys collide.
if ( isset( $current->response[ $key ] ) ) {
$theme_data = array_merge( (array) $current->response[ $key ], $theme_data );
} elseif ( isset( $current->no_update[ $key ] ) ) {
$theme_data = array_merge( (array) $current->no_update[ $key ], $theme_data );
} else {
$theme_data['update_supported'] = false;
}
$theme->update_supported = $theme_data['update_supported'];
/*
* Create the expected payload for the auto_update_theme filter, this is the same data
* as contained within $updates or $no_updates but used when the Theme is not known.
*/
$filter_payload = array(
'theme' => $key,
'new_version' => '',
'url' => '',
'package' => '',
'requires' => '',
'requires_php' => '',
);
$filter_payload = array_merge( $filter_payload, array_intersect_key( $theme_data, $filter_payload ) );
$type = 'theme';
/** This filter is documented in wp-admin/includes/class-wp-automatic-updater.php */
$auto_update_forced = apply_filters( "auto_update_{$type}", null, (object) $filter_payload );
if ( ! is_null( $auto_update_forced ) ) {
$theme->auto_update_forced = $auto_update_forced;
}
if ( $this->show_autoupdates ) {
if ( in_array( $key, $auto_updates, true ) ) {
$themes['auto-update-enabled'][ $key ] = $themes['all'][ $key ];
$enabled = in_array( $key, $auto_updates, true ) && $theme->update_supported;
if ( isset( $theme->auto_update_forced ) ) {
$enabled = (bool) $theme->auto_update_forced;
}
if ( $enabled ) {
$themes['auto-update-enabled'][ $key ] = $theme;
} else {
$themes['auto-update-disabled'][ $key ] = $themes['all'][ $key ];
$themes['auto-update-disabled'][ $key ] = $theme;
}
}
}
@ -728,7 +771,20 @@ class WP_MS_Themes_List_Table extends WP_List_Table {
$stylesheet = $theme->get_stylesheet();
if ( in_array( $stylesheet, $auto_updates, true ) ) {
if ( isset( $theme->auto_update_forced ) ) {
if ( $theme->auto_update_forced ) {
// Forced on.
$text = __( 'Auto-updates enabled' );
} else {
$text = __( 'Auto-updates disabled' );
}
$action = 'unavailable';
$time_class = ' hidden';
} elseif ( empty( $theme->update_supported ) ) {
$text = '';
$action = 'unavailable';
$time_class = ' hidden';
} elseif ( in_array( $stylesheet, $auto_updates, true ) ) {
$text = __( 'Disable auto-updates' );
$action = 'disable';
$time_class = '';
@ -747,17 +803,21 @@ class WP_MS_Themes_List_Table extends WP_List_Table {
$url = add_query_arg( $query_args, 'themes.php' );
$html[] = sprintf(
'<a href="%s" class="toggle-auto-update aria-button-if-js" data-wp-action="%s">',
wp_nonce_url( $url, 'updates' ),
$action
);
if ( 'unavailable' === $action ) {
$html[] = '<span class="label">' . $text . '</span>';
} else {
$html[] = sprintf(
'<a href="%s" class="toggle-auto-update aria-button-if-js" data-wp-action="%s">',
wp_nonce_url( $url, 'updates' ),
$action
);
$html[] = '<span class="dashicons dashicons-update spin hidden" aria-hidden="true"></span>';
$html[] = '<span class="label">' . $text . '</span>';
$html[] = '</a>';
$html[] = '<span class="dashicons dashicons-update spin hidden" aria-hidden="true"></span>';
$html[] = '<span class="label">' . $text . '</span>';
$html[] = '</a>';
}
$available_updates = get_site_transient( 'update_themes' );
if ( isset( $available_updates->response[ $stylesheet ] ) ) {
$html[] = sprintf(
'<div class="auto-update-time%s">%s</div>',

View File

@ -231,8 +231,10 @@ class WP_Plugins_List_Table extends WP_List_Table {
);
$filter_payload = (object) array_merge( $filter_payload, array_intersect_key( $plugin_data, $filter_payload ) );
/** This action is documented in wp-admin/includes/class-wp-automatic-updater.php */
$auto_update_forced = apply_filters( 'auto_update_plugin', null, $filter_payload );
$type = 'plugin';
/** This filter is documented in wp-admin/includes/class-wp-automatic-updater.php */
$auto_update_forced = apply_filters( "auto_update_{$type}", null, $filter_payload );
if ( ! is_null( $auto_update_forced ) ) {
$plugin_data['auto-update-forced'] = $auto_update_forced;
}
@ -279,10 +281,15 @@ class WP_Plugins_List_Table extends WP_List_Table {
}
if ( $this->show_autoupdates ) {
if ( in_array( $plugin_file, $auto_updates, true ) ) {
$plugins['auto-update-enabled'][ $plugin_file ] = $plugins['all'][ $plugin_file ];
$enabled = in_array( $plugin_file, $auto_updates, true ) && $plugin_data['update-supported'];
if ( isset( $plugin_data['auto-update-forced'] ) ) {
$enabled = (bool) $plugin_data['auto-update-forced'];
}
if ( $enabled ) {
$plugins['auto-update-enabled'][ $plugin_file ] = $plugin_data;
} else {
$plugins['auto-update-disabled'][ $plugin_file ] = $plugins['all'][ $plugin_file ];
$plugins['auto-update-disabled'][ $plugin_file ] = $plugin_data;
}
}
}
@ -1087,14 +1094,14 @@ class WP_Plugins_List_Table extends WP_List_Table {
if ( isset( $plugin_data['auto-update-forced'] ) ) {
if ( $plugin_data['auto-update-forced'] ) {
// Forced on
// Forced on.
$text = __( 'Auto-updates enabled' );
} else {
$text = __( 'Auto-updates disabled' );
}
$action = 'unavailable';
$time_class = ' hidden';
} elseif ( ! $plugin_data['update-supported'] ) {
} elseif ( empty( $plugin_data['update-supported'] ) ) {
$text = '';
$action = 'unavailable';
$time_class = ' hidden';

View File

@ -27,7 +27,7 @@ class WP_Site_Health_Auto_Updates {
*/
public function run_tests() {
$tests = array(
$this->test_constants( 'WP_AUTO_UPDATE_CORE', true ),
$this->test_constants( 'WP_AUTO_UPDATE_CORE', array( true, 'minor' ) ),
$this->test_wp_version_check_attached(),
$this->test_filters_automatic_updater_disabled(),
$this->test_wp_automatic_updates_disabled(),
@ -60,13 +60,17 @@ class WP_Site_Health_Auto_Updates {
* Test if auto-updates related constants are set correctly.
*
* @since 5.2.0
* @since 5.5.1 The `$value` parameter can accept an array.
*
* @param string $constant The name of the constant to check.
* @param bool $value The value that the constant should be, if set.
* @param string $constant The name of the constant to check.
* @param bool|string|array $value The value that the constant should be, if set,
* or an array of acceptable values.
* @return array The test results.
*/
public function test_constants( $constant, $value ) {
if ( defined( $constant ) && constant( $constant ) !== $value ) {
$acceptable_values = (array) $value;
if ( defined( $constant ) && ! in_array( constant( $constant ), $acceptable_values, true ) ) {
return array(
'description' => sprintf(
/* translators: %s: Name of the constant used. */

View File

@ -1115,7 +1115,7 @@ class WP_Site_Health {
'test' => 'php_sessions',
);
if ( PHP_SESSION_ACTIVE === session_status() ) {
if ( function_exists( 'session_status' ) && PHP_SESSION_ACTIVE === session_status() ) {
$result['status'] = 'critical';
$result['label'] = __( 'An active PHP session was detected' );
@ -2046,13 +2046,13 @@ class WP_Site_Health {
return $result;
}
$post_max_size = ini_get( 'post_max_size' );
$upload_max_size = ini_get( 'upload_max_filesize' );
$post_max_size = ini_get( 'post_max_size' );
$upload_max_filesize = ini_get( 'upload_max_filesize' );
if ( wp_convert_hr_to_bytes( $post_max_size ) !== wp_convert_hr_to_bytes( $upload_max_size ) ) {
if ( wp_convert_hr_to_bytes( $post_max_size ) < wp_convert_hr_to_bytes( $upload_max_filesize ) ) {
$result['label'] = sprintf(
/* translators: 1: post_max_size, 2: upload_max_filesize */
__( 'Mismatched "%1$s" and "%2$s" values.' ),
__( 'The "%1$s" value is smaller than "%2$s".' ),
'post_max_size',
'upload_max_filesize'
);
@ -2061,7 +2061,7 @@ class WP_Site_Health {
'<p>%s</p>',
sprintf(
/* translators: 1: post_max_size, 2: upload_max_filesize */
__( 'The settings for %1$s and %2$s are not the same, this could cause some problems when trying to upload files.' ),
__( 'The setting for %1$s is smaller than %2$s, this could cause some problems when trying to upload files.' ),
'<code>post_max_size</code>',
'<code>upload_max_filesize</code>'
)
@ -2207,6 +2207,15 @@ class WP_Site_Health {
*/
$tests = apply_filters( 'site_status_tests', $tests );
// Ensure that the filtered tests contain the required array keys.
$tests = array_merge(
array(
'direct' => array(),
'async' => array(),
),
$tests
);
return $tests;
}
@ -2372,10 +2381,14 @@ class WP_Site_Health {
'requires_php' => '5.6.20',
);
$type = 'plugin';
/** This filter is documented in wp-admin/includes/class-wp-automatic-updater.php */
$test_plugins_enabled = apply_filters( 'auto_update_plugin', true, $mock_plugin );
$test_plugins_enabled = apply_filters( "auto_update_{$type}", true, $mock_plugin );
$type = 'theme';
/** This filter is documented in wp-admin/includes/class-wp-automatic-updater.php */
$test_themes_enabled = apply_filters( 'auto_update_theme', true, $mock_theme );
$test_themes_enabled = apply_filters( "auto_update_{$type}", true, $mock_theme );
$ui_enabled_for_plugins = wp_is_auto_update_enabled_for_type( 'plugin' );
$ui_enabled_for_themes = wp_is_auto_update_enabled_for_type( 'theme' );
$plugin_filter_present = has_filter( 'auto_update_plugin' );

View File

@ -1379,9 +1379,11 @@ function wp_print_community_events_templates() {
</div>
<div class="event-date-time">
<span class="event-date">{{ event.formatted_date }}</span>
<span class="event-date">{{ event.user_formatted_date }}</span>
<# if ( 'meetup' === event.type ) { #>
<span class="event-time">{{ event.formatted_time }}</span>
<span class="event-time">
{{ event.user_formatted_time }} {{ event.timeZoneAbbreviation }}
</span>
<# } #>
</div>
</li>

View File

@ -555,7 +555,7 @@ function wp_edit_theme_plugin_file( $args ) {
$url = admin_url();
}
if ( PHP_SESSION_ACTIVE === session_status() ) {
if ( function_exists( 'session_status' ) && PHP_SESSION_ACTIVE === session_status() ) {
// Close any active session to prevent HTTP requests from timing out
// when attempting to connect back to the site.
session_write_close();

View File

@ -530,7 +530,7 @@ function wp_iframe( $content_func, ...$args ) {
?>
<script type="text/javascript">
addLoadEvent = function(func){if(typeof jQuery!="undefined")jQuery(document).ready(func);else if(typeof wpOnload!='function'){wpOnload=func;}else{var oldonload=wpOnload;wpOnload=function(){oldonload();func();}}};
var ajaxurl = '<?php echo admin_url( 'admin-ajax.php', 'relative' ); ?>', pagenow = 'media-upload-popup', adminpage = 'media-upload-popup',
var ajaxurl = '<?php echo esc_js( admin_url( 'admin-ajax.php', 'relative' ) ); ?>', pagenow = 'media-upload-popup', adminpage = 'media-upload-popup',
isRtl = <?php echo (int) is_rtl(); ?>;
</script>
<?php

View File

@ -842,7 +842,7 @@ function can_edit_network( $network_id ) {
function _thickbox_path_admin_subfolder() {
?>
<script type="text/javascript">
var tb_pathToImage = "<?php echo includes_url( 'js/thickbox/loadingAnimation.gif', 'relative' ); ?>";
var tb_pathToImage = "<?php echo esc_js( includes_url( 'js/thickbox/loadingAnimation.gif', 'relative' ) ); ?>";
</script>
<?php
}

View File

@ -120,7 +120,7 @@ function wp_terms_checklist( $post_id = 0, $args = array() ) {
$args['list_only'] = ! empty( $parsed_args['list_only'] );
if ( is_array( $parsed_args['selected_cats'] ) ) {
$args['selected_cats'] = $parsed_args['selected_cats'];
$args['selected_cats'] = array_map( 'intval', $parsed_args['selected_cats'] );
} elseif ( $post_id ) {
$args['selected_cats'] = wp_get_object_terms( $post_id, $taxonomy, array_merge( $args, array( 'fields' => 'ids' ) ) );
} else {
@ -128,7 +128,7 @@ function wp_terms_checklist( $post_id = 0, $args = array() ) {
}
if ( is_array( $parsed_args['popular_cats'] ) ) {
$args['popular_cats'] = $parsed_args['popular_cats'];
$args['popular_cats'] = array_map( 'intval', $parsed_args['popular_cats'] );
} else {
$args['popular_cats'] = get_terms(
array(
@ -2018,12 +2018,12 @@ function iframe_header( $title = '', $deprecated = false ) {
<script type="text/javascript">
addLoadEvent = function(func){if(typeof jQuery!="undefined")jQuery(document).ready(func);else if(typeof wpOnload!='function'){wpOnload=func;}else{var oldonload=wpOnload;wpOnload=function(){oldonload();func();}}};
function tb_close(){var win=window.dialogArguments||opener||parent||top;win.tb_remove();}
var ajaxurl = '<?php echo admin_url( 'admin-ajax.php', 'relative' ); ?>',
pagenow = '<?php echo $current_screen->id; ?>',
typenow = '<?php echo $current_screen->post_type; ?>',
adminpage = '<?php echo $admin_body_class; ?>',
thousandsSeparator = '<?php echo addslashes( $wp_locale->number_format['thousands_sep'] ); ?>',
decimalPoint = '<?php echo addslashes( $wp_locale->number_format['decimal_point'] ); ?>',
var ajaxurl = '<?php echo esc_js( admin_url( 'admin-ajax.php', 'relative' ) ); ?>',
pagenow = '<?php echo esc_js( $current_screen->id ); ?>',
typenow = '<?php echo esc_js( $current_screen->post_type ); ?>',
adminpage = '<?php echo esc_js( $admin_body_class ); ?>',
thousandsSeparator = '<?php echo esc_js( $wp_locale->number_format['thousands_sep'] ); ?>',
decimalPoint = '<?php echo esc_js( $wp_locale->number_format['decimal_point'] ); ?>',
isRtl = <?php echo (int) is_rtl(); ?>;
</script>
<?php
@ -2214,6 +2214,9 @@ function get_post_states( $post ) {
*
* @since 2.8.0
* @since 3.6.0 Added the `$post` parameter.
* @since 5.5.0 Also applied in the Customizer context. If any admin functions
* are used within the filter, their existence should be checked
* with `function_exists()` before being used.
*
* @param string[] $post_states An array of post display states.
* @param WP_Post $post The current post object.

View File

@ -647,12 +647,16 @@ function wp_prepare_themes_for_js( $themes = null ) {
}
}
$updates = array();
$updates = array();
$no_updates = array();
if ( current_user_can( 'update_themes' ) ) {
$updates_transient = get_site_transient( 'update_themes' );
if ( isset( $updates_transient->response ) ) {
$updates = $updates_transient->response;
}
if ( isset( $updates_transient->no_update ) ) {
$no_updates = $updates_transient->no_update;
}
}
WP_Theme::sort_by_name( $themes );
@ -690,6 +694,32 @@ function wp_prepare_themes_for_js( $themes = null ) {
$auto_update = in_array( $slug, $auto_updates, true );
$auto_update_action = $auto_update ? 'disable-auto-update' : 'enable-auto-update';
if ( isset( $updates[ $slug ] ) ) {
$auto_update_supported = true;
$auto_update_filter_payload = (object) $updates[ $slug ];
} elseif ( isset( $no_updates[ $slug ] ) ) {
$auto_update_supported = true;
$auto_update_filter_payload = (object) $no_updates[ $slug ];
} else {
$auto_update_supported = false;
/*
* Create the expected payload for the auto_update_theme filter, this is the same data
* as contained within $updates or $no_updates but used when the Theme is not known.
*/
$auto_update_filter_payload = (object) array(
'theme' => $slug,
'new_version' => $theme->get( 'Version' ),
'url' => '',
'package' => '',
'requires' => $theme->get( 'RequiresWP' ),
'requires_php' => $theme->get( 'RequiresPHP' ),
);
}
$type = 'theme';
/** This filter is documented in wp-admin/includes/class-wp-automatic-updater.php */
$auto_update_forced = apply_filters( "auto_update_{$type}", null, $auto_update_filter_payload );
$prepared_themes[ $slug ] = array(
'id' => $slug,
'name' => $theme->display( 'Name' ),
@ -710,7 +740,11 @@ function wp_prepare_themes_for_js( $themes = null ) {
'hasUpdate' => isset( $updates[ $slug ] ),
'hasPackage' => isset( $updates[ $slug ] ) && ! empty( $updates[ $slug ]['package'] ),
'update' => get_theme_update_available( $theme ),
'autoupdate' => $auto_update,
'autoupdate' => array(
'enabled' => $auto_update || $auto_update_forced,
'supported' => $auto_update_supported,
'forced' => $auto_update_forced,
),
'actions' => array(
'activate' => current_user_can( 'switch_themes' ) ? wp_nonce_url( admin_url( 'themes.php?action=activate&amp;stylesheet=' . $encoded_slug ), 'switch-theme_' . $slug ) : null,
'customize' => $customize_action,

View File

@ -646,7 +646,7 @@ function wp_theme_update_row( $theme_key, $theme ) {
$requires_php = isset( $response['requires_php'] ) ? $response['requires_php'] : null;
$compatible_wp = is_wp_version_compatible( $requires_wp );
$compatible_php = is_php_version_compatible( $compatible_php );
$compatible_php = is_php_version_compatible( $requires_php );
printf(
'<tr class="plugin-update-tr%s" id="%s" data-slug="%s">' .

View File

@ -2174,9 +2174,6 @@ function upgrade_550() {
global $wp_current_db_version;
if ( $wp_current_db_version < 48121 ) {
update_option( 'finished_updating_comment_type', 0 );
wp_schedule_single_event( time() + ( 1 * MINUTE_IN_SECONDS ), 'wp_update_comment_type_batch' );
$comment_previously_approved = get_option( 'comment_whitelist', '' );
update_option( 'comment_previously_approved', $comment_previously_approved );
delete_option( 'comment_whitelist' );
@ -2198,6 +2195,11 @@ function upgrade_550() {
delete_option( 'blacklist_keys' );
delete_option( 'blocklist_keys' );
}
if ( $wp_current_db_version < 48748 ) {
update_option( 'finished_updating_comment_type', 0 );
wp_schedule_single_event( time() + ( 1 * MINUTE_IN_SECONDS ), 'wp_update_comment_type_batch' );
}
}
/**
@ -2565,7 +2567,7 @@ function __get_option( $setting ) { // phpcs:ignore WordPress.NamingConventions.
$option = $wpdb->get_var( $wpdb->prepare( "SELECT option_value FROM $wpdb->options WHERE option_name = %s", $setting ) );
if ( 'home' === $setting && '' === $option ) {
if ( 'home' === $setting && ! $option ) {
return __get_option( 'siteurl' );
}

View File

@ -77,9 +77,9 @@ if ( get_user_setting( 'uploader' ) || isset( $_GET['browser-uploader'] ) ) {
<?php media_upload_form(); ?>
<script type="text/javascript">
var post_id = <?php echo $post_id; ?>, shortform = 3;
var post_id = <?php echo absint( $post_id ); ?>, shortform = 3;
</script>
<input type="hidden" name="post_id" id="post_id" value="<?php echo $post_id; ?>" />
<input type="hidden" name="post_id" id="post_id" value="<?php echo absint( $post_id ); ?>" />
<?php wp_nonce_field( 'media-form' ); ?>
<div id="media-items" class="hide-if-no-js"></div>
</form>

View File

@ -220,7 +220,7 @@ if ( ! wp_is_large_network( 'users' ) && apply_filters( 'show_network_site_users
require_once ABSPATH . 'wp-admin/admin-header.php'; ?>
<script type="text/javascript">
var current_site_id = <?php echo $id; ?>;
var current_site_id = <?php echo absint( $id ); ?>;
</script>

View File

@ -675,17 +675,23 @@ if ( ! is_multisite() && $broken_themes ) {
function wp_theme_auto_update_setting_template() {
$template = '
<div class="theme-autoupdate">
<# if ( data.autoupdate ) { #>
<button type="button" class="toggle-auto-update button-link" data-slug="{{ data.id }}" data-wp-action="disable">
<span class="dashicons dashicons-update spin hidden" aria-hidden="true"></span><span class="label">' . __( 'Disable auto-updates' ) . '</span>
</button>
<# } else { #>
<button type="button" class="toggle-auto-update button-link" data-slug="{{ data.id }}" data-wp-action="enable">
<span class="dashicons dashicons-update spin hidden" aria-hidden="true"></span><span class="label">' . __( 'Enable auto-updates' ) . '</span>
</button>
<# if ( data.autoupdate.supported ) { #>
<# if ( data.autoupdate.forced === false ) { #>
' . __( 'Auto-updates disabled' ) . '
<# } else if ( data.autoupdate.forced ) { #>
' . __( 'Auto-updates enabled' ) . '
<# } else if ( data.autoupdate.enabled ) { #>
<button type="button" class="toggle-auto-update button-link" data-slug="{{ data.id }}" data-wp-action="disable">
<span class="dashicons dashicons-update spin hidden" aria-hidden="true"></span><span class="label">' . __( 'Disable auto-updates' ) . '</span>
</button>
<# } else { #>
<button type="button" class="toggle-auto-update button-link" data-slug="{{ data.id }}" data-wp-action="enable">
<span class="dashicons dashicons-update spin hidden" aria-hidden="true"></span><span class="label">' . __( 'Enable auto-updates' ) . '</span>
</button>
<# } #>
<# } #>
<# if ( data.hasUpdate ) { #>
<# if ( data.autoupdate ) { #>
<# if ( data.autoupdate.supported && data.autoupdate.enabled ) { #>
<span class="auto-update-time">
<# } else { #>
<span class="auto-update-time hidden">

View File

@ -2,7 +2,7 @@
Contributors: wordpressdotorg
Requires at least: WordPress 3.2
Tested up to: 5.5
Stable tag: 3.4
Stable tag: 3.5
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: blog, one-column, two-columns, left-sidebar, right-sidebar, custom-background, custom-colors, custom-header, custom-menu, editor-style, featured-image-header, featured-images, flexible-header, footer-widgets, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready
@ -43,6 +43,11 @@ Source: https://github.com/aFarkas/html5shiv
== Changelog ==
= 3.5 =
* Released: August 11, 2020
https://codex.wordpress.org/Twenty_Eleven_Theme_Changelog#Version_3.5
= 3.4 =
* Released: March 31, 2020

View File

@ -4,7 +4,7 @@ Theme URI: https://wordpress.org/themes/twentyeleven/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: The 2011 theme for WordPress is sophisticated, lightweight, and adaptable. Make it yours with a custom menu, header image, and background -- then go further with available theme options for light or dark color scheme, custom link colors, and three layout choices. Twenty Eleven comes equipped with a Showcase page template that transforms your front page into a showcase to show off your best content, widget support galore (sidebar, three footer areas, and a Showcase page widget area), and a custom "Ephemera" widget to display your Aside, Link, Quote, or Status posts. Included are styles for print and for the admin editor, support for featured images (as custom header images on posts and pages and as large images on featured "sticky" posts), and special styles for six different post formats.
Version: 3.4
Version: 3.5
Requires PHP: 5.2.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -2,7 +2,7 @@
Contributors: wordpressdotorg
Requires at least: WordPress 4.1
Tested up to: 5.5
Version: 2.6
Version: 2.7
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: blog, two-columns, left-sidebar, accessibility-ready, custom-background, custom-colors, custom-header, custom-logo, custom-menu, editor-style, featured-images, microformats, post-formats, rtl-language-support, sticky-post, threaded-comments, translation-ready
@ -55,6 +55,11 @@ Source: http://www.genericons.com
== Changelog ==
= 2.7 =
* Released: August 11, 2020
https://codex.wordpress.org/Twenty_Fifteen_Theme_Changelog#Version_2.7
= 2.6 =
* Released: March 31, 2020

View File

@ -4,7 +4,7 @@ Theme URI: https://wordpress.org/themes/twentyfifteen/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: Our 2015 default theme is clean, blog-focused, and designed for clarity. Twenty Fifteen's simple, straightforward typography is readable on a wide variety of screen sizes, and suitable for multiple languages. We designed it using a mobile-first approach, meaning your content takes center-stage, regardless of whether your visitors arrive by smartphone, tablet, laptop, or desktop computer.
Version: 2.6
Version: 2.7
Requires PHP: 5.2.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -2,7 +2,7 @@
Contributors: wordpressdotorg
Requires at least: WordPress 3.6
Tested up to: 5.5
Stable tag: 2.8
Stable tag: 2.9
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: blog, news, two-columns, three-columns, left-sidebar, right-sidebar, custom-background, custom-header, custom-menu, editor-style, featured-images, flexible-header, footer-widgets, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready, accessibility-ready
@ -50,6 +50,11 @@ Source: http://www.genericons.com
== Changelog ==
= 2.9 =
* Released: August 11, 2020
https://codex.wordpress.org/Twenty_Fourteen_Theme_Changelog#Version_2.9
= 2.8 =
* Released: March 31, 2020

View File

@ -4,7 +4,7 @@ Theme URI: https://wordpress.org/themes/twentyfourteen/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: In 2014, our default theme lets you create a responsive magazine website with a sleek, modern design. Feature your favorite homepage content in either a grid or a slider. Use the three widget areas to customize your website, and change your content's layout with a full-width page template and a contributor page to show off your authors. Creating a magazine website with WordPress has never been easier.
Version: 2.8
Version: 2.9
Requires PHP: 5.2.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

View File

@ -1,6 +1,6 @@
{
"name": "twentynineteen",
"version": "1.0.0",
"version": "1.7.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {

View File

@ -1,6 +1,6 @@
{
"name": "twentynineteen",
"version": "1.0.0",
"version": "1.7.0",
"description": "Default WP Theme",
"bugs": {
"url": "https://github.com/WordPress/twentynineteen/issues"

View File

@ -3,7 +3,7 @@ Contributors: wordpressdotorg
Tags: one-column, flexible-header, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, rtl-language-support, sticky-post, threaded-comments, translation-ready
Requires at least: 4.9.6
Tested up to: 5.5
Stable tag: 1.5
Stable tag: 1.7
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
@ -39,6 +39,11 @@ GNU General Public License for more details.
== Changelog ==
= 1.7 =
* Released: August 11, 2020
https://codex.wordpress.org/Twenty_Nineteen_Theme_Changelog#Version_1.7
= 1.6 =
* Released: June 10, 2020

View File

@ -7,7 +7,7 @@ Author URI: https://wordpress.org/
Description: Our 2019 default theme is designed to show off the power of the block editor. It features custom styles for all the default blocks, and is built so that what you see in the editor looks like what you'll see on your website. Twenty Nineteen is designed to be adaptable to a wide range of websites, whether youre running a photo blog, launching a new business, or supporting a non-profit. Featuring ample whitespace and modern sans-serif headlines paired with classic serif body text, it's built to be beautiful on all screen sizes.
Requires at least: 4.9.6
Requires PHP: 5.2.4
Version: 1.6
Version: 1.7
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentynineteen

View File

@ -7,7 +7,7 @@ Author URI: https://wordpress.org/
Description: Our 2019 default theme is designed to show off the power of the block editor. It features custom styles for all the default blocks, and is built so that what you see in the editor looks like what you'll see on your website. Twenty Nineteen is designed to be adaptable to a wide range of websites, whether youre running a photo blog, launching a new business, or supporting a non-profit. Featuring ample whitespace and modern sans-serif headlines paired with classic serif body text, it's built to be beautiful on all screen sizes.
Requires at least: 4.9.6
Requires PHP: 5.2.4
Version: 1.6
Version: 1.7
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentynineteen

View File

@ -6,7 +6,7 @@ Author URI: https://wordpress.org/
Description: Our 2019 default theme is designed to show off the power of the block editor. It features custom styles for all the default blocks, and is built so that what you see in the editor looks like what you'll see on your website. Twenty Nineteen is designed to be adaptable to a wide range of websites, whether youre running a photo blog, launching a new business, or supporting a non-profit. Featuring ample whitespace and modern sans-serif headlines paired with classic serif body text, it's built to be beautiful on all screen sizes.
Requires at least: 4.9.6
Requires PHP: 5.2.4
Version: 1.6
Version: 1.7
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentynineteen

View File

@ -1,7 +1,7 @@
=== Twenty Seventeen ===
Contributors: wordpressdotorg
Tested up to: 5.5
Version: 2.3
Version: 2.4
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: one-column, two-columns, right-sidebar, flexible-header, accessibility-ready, custom-colors, custom-header, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, post-formats, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready
@ -59,6 +59,11 @@ Source: https://unsplash.com/@englr?photo=bIhpiQA009k
== Changelog ==
= 2.4 =
* Released: August 11, 2020
https://codex.wordpress.org/Twenty_Seventeen_Theme_Changelog#Version_2.4
= 2.3 =
* Released: March 31, 2020

View File

@ -4,7 +4,7 @@ Theme URI: https://wordpress.org/themes/twentyseventeen/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: Twenty Seventeen brings your site to life with header video and immersive featured images. With a focus on business sites, it features multiple sections on the front page as well as widgets, navigation and social menus, a logo, and more. Personalize its asymmetrical grid with a custom color scheme and showcase your multimedia content with post formats. Our default theme for 2017 works great in many languages, for any abilities, and on any device.
Version: 2.3
Version: 2.4
Requires at least: 4.7
Requires PHP: 5.2.4
License: GNU General Public License v2 or later

View File

@ -1,7 +1,7 @@
=== Twenty Sixteen ===
Contributors: wordpressdotorg
Tested up to: 5.5
Version: 2.1
Version: 2.2
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: one-column, two-columns, right-sidebar, accessibility-ready, custom-background, custom-colors, custom-header, custom-menu, editor-style, featured-images, flexible-header, microformats, post-formats, rtl-language-support, sticky-post, threaded-comments, translation-ready, blog
@ -55,6 +55,11 @@ Image used in screenshot.png: A photo by Austin Schmid (https://unsplash.com/sch
== Changelog ==
= 2.2 =
* Released: August 11, 2020
https://codex.wordpress.org/Twenty_Sixteen_Theme_Changelog#Version_2.2
= 2.1 =
* Released: March 31, 2020

View File

@ -4,7 +4,7 @@ Theme URI: https://wordpress.org/themes/twentysixteen/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: Twenty Sixteen is a modernized take on an ever-popular WordPress layout the horizontal masthead with an optional right sidebar that works perfectly for blogs and websites. It has custom color options with beautiful default color schemes, a harmonious fluid grid using a mobile-first approach, and impeccable polish in every detail. Twenty Sixteen will make your WordPress look beautiful everywhere.
Version: 2.1
Version: 2.2
Requires at least: 4.4
Requires PHP: 5.2.4
License: GNU General Public License v2 or later

View File

@ -1,7 +1,7 @@
=== Twenty Ten ===
Contributors: wordpressdotorg
Tested up to: 5.5
Stable tag: 3.0
Stable tag: 3.1
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: blog, two-columns, custom-header, custom-background, threaded-comments, sticky-post, translation-ready, microformats, rtl-language-support, editor-style, custom-menu, flexible-header, featured-images, footer-widgets, featured-image-header
@ -36,6 +36,11 @@ GNU General Public License for more details.
== Changelog ==
= 3.1 =
* Released: August 11, 2020
https://codex.wordpress.org/Twenty_Ten_Theme_Changelog#Version_3.1
= 3.0 =
* Released: March 31, 2020

View File

@ -4,7 +4,7 @@ Theme URI: https://wordpress.org/themes/twentyten/
Description: The 2010 theme for WordPress is stylish, customizable, simple, and readable -- make it yours with a custom menu, header image, and background. Twenty Ten supports six widgetized areas (two in the sidebar, four in the footer) and featured images (thumbnails for gallery posts and custom header images for posts and pages). It includes stylesheets for print and the admin Visual Editor, special styles for posts in the "Asides" and "Gallery" categories, and has an optional one-column page template that removes the sidebar.
Author: the WordPress team
Author URI: https://wordpress.org/
Version: 3.0
Version: 3.1
Requires at least: 3.0
Requires PHP: 5.2.4
License: GNU General Public License v2 or later

View File

@ -1,7 +1,7 @@
=== Twenty Thirteen ===
Contributors: wordpressdotorg
Tested up to: 5.5
Stable tag: 3.0
Stable tag: 3.1
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: blog, one-column, two-columns, right-sidebar, custom-header, custom-menu, editor-style, featured-images, footer-widgets, microformats, post-formats, rtl-language-support, sticky-post, translation-ready, accessibility-ready
@ -46,8 +46,13 @@ Source: http://www.genericons.com
== Changelog ==
= 3.1 =
* Released: August 11, 2020
https://codex.wordpress.org/Twenty_Thirteen_Theme_Changelog#Version_3.1
= 3.0 =
* Released: March, 2020
* Released: March 31, 2020
https://codex.wordpress.org/Twenty_Thirteen_Theme_Changelog#Version_3.0

View File

@ -4,7 +4,7 @@ Theme URI: https://wordpress.org/themes/twentythirteen/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: The 2013 theme for WordPress takes us back to the blog, featuring a full range of post formats, each displayed beautifully in their own unique way. Design details abound, starting with a vibrant color scheme and matching header images, beautiful typography and icons, and a flexible layout that looks great on any device, big or small.
Version: 3.0
Version: 3.1
Requires at least: 3.6
Requires PHP: 5.2.4
License: GNU General Public License v2 or later

View File

@ -1,7 +1,7 @@
=== Twenty Twelve ===
Contributors: wordpressdotorg
Tested up to: 5.5
Stable tag: 3.1
Stable tag: 3.2
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: blog, one-column, two-columns, right-sidebar, custom-background, custom-header, custom-menu, editor-style, featured-images, flexible-header, footer-widgets, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready
@ -42,6 +42,11 @@ Source: https://github.com/aFarkas/html5shiv
== Changelog ==
= 3.2 =
* Released: August 11, 2020
https://codex.wordpress.org/Twenty_Twelve_Theme_Changelog#Version_3.2
= 3.1 =
* Released: March 31, 2020

View File

@ -4,7 +4,7 @@ Theme URI: https://wordpress.org/themes/twentytwelve/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: The 2012 theme for WordPress is a fully responsive theme that looks great on any device. Features include a front page template with its own widgets, an optional display font, styling for post formats on both index and single views, and an optional no-sidebar page template. Make it yours with a custom menu, header image, and background.
Version: 3.1
Version: 3.2
Requires at least: 3.5
Requires PHP: 5.2.4
License: GNU General Public License v2 or later

View File

@ -1,6 +1,6 @@
{
"name": "twentytwenty",
"version": "1.0.0",
"version": "1.5.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {

View File

@ -1,6 +1,6 @@
{
"name": "twentytwenty",
"version": "1.0.0",
"version": "1.5.0",
"description": "Default WP Theme",
"author": "The WordPress Contributors",
"license": "GPL-2.0-or-later",

View File

@ -1,7 +1,7 @@
=== Twenty Twenty ===
Contributors: the WordPress team
Tested up to: 5.5
Stable tag: 1.2
Stable tag: 1.5
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
@ -9,19 +9,24 @@ Default theme for 2020.
== Description ==
Our default theme for 2020 is designed to take full advantage of the
flexibility of the block editor. Organizations and businesses have the
ability to create dynamic landing pages with endless layouts using the
group and column blocks. The centered content column and fine-tuned
typography also makes it perfect for traditional blogs. Complete editor
styles give you a good idea of what your content will look like, even
before you publish. You can give your site a personal touch by changing
the background colors and the accent color in the Customizer. The colors of
all elements on your site are automatically calculated based on the colors
Our default theme for 2020 is designed to take full advantage of the
flexibility of the block editor. Organizations and businesses have the
ability to create dynamic landing pages with endless layouts using the
group and column blocks. The centered content column and fine-tuned
typography also makes it perfect for traditional blogs. Complete editor
styles give you a good idea of what your content will look like, even
before you publish. You can give your site a personal touch by changing
the background colors and the accent color in the Customizer. The colors of
all elements on your site are automatically calculated based on the colors
you pick, ensuring a high, accessible color contrast for your visitors.
== Changelog ==
= 1.5 =
* Released: August 11, 2020
https://wordpress.org/support/article/twenty-twenty-changelog/#Version_1.5
= 1.4 =
* Released: June 10, 2020
@ -68,7 +73,7 @@ Chaplin Theme is distributed under the terms of the GNU GPL version 2.0
Twenty Twenty bundles the following third-party resources:
Illustrations by Tammie Lister
License: Creative Commons Zero (CC0), https://creativecommons.org/publicdomain/zero/1.0/
License: Creative Commons Zero (CC0), https://creativecommons.org/publicdomain/zero/1.0/
Inter Font
Copyright (c) 2016-2019 The Inter Project Authors (me@rsms.me)
@ -114,5 +119,5 @@ Source: https://wordpress.org/themes/twentyseventeen/
Included as part of the following classes and functions:
- twentytwenty_unique_id()
Underscores
Underscores
https://underscores.me/, (C) 2012-2019 Automattic, Inc., [GPLv2 or later](https://www.gnu.org/licenses/gpl-2.0.html)

View File

@ -1,7 +1,7 @@
/*
Theme Name: Twenty Twenty
Text Domain: twentytwenty
Version: 1.4
Version: 1.5
Requires at least: 4.7
Requires PHP: 5.2.4
Description: Our default theme for 2020 is designed to take full advantage of the flexibility of the block editor. Organizations and businesses have the ability to create dynamic landing pages with endless layouts using the group and column blocks. The centered content column and fine-tuned typography also makes it perfect for traditional blogs. Complete editor styles give you a good idea of what your content will look like, even before you publish. You can give your site a personal touch by changing the background colors and the accent color in the Customizer. The colors of all elements on your site are automatically calculated based on the colors you pick, ensuring a high, accessible color contrast for your visitors.

View File

@ -1,7 +1,7 @@
/*
Theme Name: Twenty Twenty
Text Domain: twentytwenty
Version: 1.4
Version: 1.5
Requires at least: 4.7
Requires PHP: 5.2.4
Description: Our default theme for 2020 is designed to take full advantage of the flexibility of the block editor. Organizations and businesses have the ability to create dynamic landing pages with endless layouts using the group and column blocks. The centered content column and fine-tuned typography also makes it perfect for traditional blogs. Complete editor styles give you a good idea of what your content will look like, even before you publish. You can give your site a personal touch by changing the background colors and the accent color in the Customizer. The colors of all elements on your site are automatically calculated based on the colors you pick, ensuring a high, accessible color contrast for your visitors.

View File

@ -42,4 +42,20 @@ class Requests_Utility_FilteredIterator extends ArrayIterator {
$value = call_user_func($this->callback, $value);
return $value;
}
/**
* @inheritdoc
*/
public function unserialize( $serialized ) {
}
/**
* @inheritdoc
*/
public function __unserialize( $serialized ) { // phpcs:ignore PHPCompatibility.FunctionNameRestrictions.ReservedFunctionNames.MethodDoubleUnderscore,PHPCompatibility.FunctionNameRestrictions.NewMagicMethods.__unserializeFound
}
public function __wakeup() { // phpcs:ignore PHPCompatibility.FunctionNameRestrictions.ReservedFunctionNames.MethodDoubleUnderscore,PHPCompatibility.FunctionNameRestrictions.NewMagicMethods.__wakeupFound
unset( $this->callback );
}
}

File diff suppressed because one or more lines are too long

View File

@ -7,7 +7,7 @@
return array(
'title' => __( 'Heading and paragraph' ),
'content' => "<!-- wp:group -->\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container\"><!-- wp:heading {\"textColor\":\"black\",\"fontSize\":\"large\"} -->\n<h2 class=\"has-black-color has-text-color has-large-font-size\"><span style=\"color:#ba0c49\" class=\"has-inline-color\"><strong>2</strong>.</span><br>" . __( 'Which treats of the first sally the ingenious Don Quixote made from home' ) . "</h2>\n<!-- /wp:heading -->\n\n<!-- wp:paragraph {\"textColor\":\"black\"} -->\n<p class=\"has-black-color has-text-color\">" . __( 'These preliminaries settled, he did not care to put off any longer the execution of his design, urged on to it by the thought of all the world was losing by his delay, seeing what wrongs he intended to right, grievances to redress, injustices to repair, abuses to remove, and duties to discharge.' ) . "</p>\n<!-- /wp:paragraph --></div></div>\n<!-- /wp:group -->",
'content' => "<!-- wp:group -->\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container\"><!-- wp:heading {\"fontSize\":\"large\"} -->\n<h2 class=\"has-large-font-size\"><span style=\"color:#ba0c49\" class=\"has-inline-color\"><strong>2</strong>.</span><br>" . __( 'Which treats of the first sally the ingenious Don Quixote made from home' ) . "</h2>\n<!-- /wp:heading -->\n\n<!-- wp:paragraph -->\n<p>" . __( 'These preliminaries settled, he did not care to put off any longer the execution of his design, urged on to it by the thought of all the world was losing by his delay, seeing what wrongs he intended to right, grievances to redress, injustices to repair, abuses to remove, and duties to discharge.' ) . "</p>\n<!-- /wp:paragraph --></div></div>\n<!-- /wp:group -->",
'viewportWidth' => 1000,
'categories' => array( 'text' ),
'description' => _x( 'A heading preceded by a chapter number, and followed by a paragraph.', 'Block pattern description' ),

View File

@ -7,7 +7,7 @@
return array(
'title' => __( 'Large header with a heading and a button ' ),
'content' => "<!-- wp:cover {\"minHeight\":575,\"minHeightUnit\":\"px\",\"customGradient\":\"linear-gradient(135deg,rgb(249,72,72) 1%,rgb(179,22,22) 100%)\",\"contentPosition\":\"center center\",\"align\":\"wide\"} -->\n<div class=\"wp-block-cover alignwide has-background-dim has-background-gradient is-position-center-center\" style=\"background:linear-gradient(135deg,rgb(249,72,72) 1%,rgb(179,22,22) 100%);min-height:575px\"><div class=\"wp-block-cover__inner-container\"><!-- wp:columns {\"align\":\"wide\"} -->\n<div class=\"wp-block-columns alignwide\"><!-- wp:column {\"width\":12} -->\n<div class=\"wp-block-column\" style=\"flex-basis:12%\"><!-- wp:spacer -->\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"></div>\n<!-- /wp:spacer --></div>\n<!-- /wp:column -->\n\n<!-- wp:column -->\n<div class=\"wp-block-column\"><!-- wp:spacer -->\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"></div>\n<!-- /wp:spacer -->\n\n<!-- wp:paragraph {\"align\":\"left\",\"placeholder\":\"Write title…\",\"style\":{\"typography\":{\"fontSize\":68,\"lineHeight\":\"1.2\"},\"color\":{\"text\":\"#fffffa\"}}} -->\n<p class=\"has-text-align-left has-text-color\" style=\"line-height:1.2;font-size:68px;color:#fffffa\"><strong>" . __( 'Thou hast seen' ) . '</strong><br><strong>' . __( 'nothing yet' ) . "</strong></p>\n<!-- /wp:paragraph -->\n\n<!-- wp:buttons -->\n<div class=\"wp-block-buttons\"><!-- wp:button {\"borderRadius\":3,\"style\":{\"color\":{\"background\":\"#fffffa\",\"text\":\"#00000a\"}}} -->\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link has-text-color has-background\" style=\"border-radius:3px;background-color:#fffffa;color:#00000a\">Read now</a></div>\n<!-- /wp:button --></div>\n<!-- /wp:buttons -->\n\n<!-- wp:spacer -->\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"></div>\n<!-- /wp:spacer --></div>\n<!-- /wp:column -->\n\n<!-- wp:column {\"width\":12} -->\n<div class=\"wp-block-column\" style=\"flex-basis:12%\"><!-- wp:spacer -->\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"></div>\n<!-- /wp:spacer --></div>\n<!-- /wp:column --></div>\n<!-- /wp:columns --></div></div>\n<!-- /wp:cover -->",
'content' => "<!-- wp:cover {\"minHeight\":575,\"minHeightUnit\":\"px\",\"customGradient\":\"linear-gradient(135deg,rgb(249,72,72) 1%,rgb(179,22,22) 100%)\",\"contentPosition\":\"center center\",\"align\":\"wide\"} -->\n<div class=\"wp-block-cover alignwide has-background-dim has-background-gradient is-position-center-center\" style=\"background:linear-gradient(135deg,rgb(249,72,72) 1%,rgb(179,22,22) 100%);min-height:575px\"><div class=\"wp-block-cover__inner-container\"><!-- wp:columns {\"align\":\"wide\"} -->\n<div class=\"wp-block-columns alignwide\"><!-- wp:column {\"width\":12} -->\n<div class=\"wp-block-column\" style=\"flex-basis:12%\"><!-- wp:spacer -->\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"></div>\n<!-- /wp:spacer --></div>\n<!-- /wp:column -->\n\n<!-- wp:column -->\n<div class=\"wp-block-column\"><!-- wp:spacer -->\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"></div>\n<!-- /wp:spacer -->\n\n<!-- wp:paragraph {\"align\":\"left\",\"placeholder\":\"" . __( 'Write title…' ) . "\",\"style\":{\"typography\":{\"fontSize\":68,\"lineHeight\":\"1.2\"},\"color\":{\"text\":\"#fffffa\"}}} -->\n<p class=\"has-text-align-left has-text-color\" style=\"line-height:1.2;font-size:68px;color:#fffffa\"><strong>" . __( 'Thou hast seen' ) . '</strong><br><strong>' . __( 'nothing yet' ) . "</strong></p>\n<!-- /wp:paragraph -->\n\n<!-- wp:buttons -->\n<div class=\"wp-block-buttons\"><!-- wp:button {\"borderRadius\":3,\"style\":{\"color\":{\"background\":\"#fffffa\",\"text\":\"#00000a\"}}} -->\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link has-text-color has-background\" style=\"border-radius:3px;background-color:#fffffa;color:#00000a\">" . __( 'Read now' ) . "</a></div>\n<!-- /wp:button --></div>\n<!-- /wp:buttons -->\n\n<!-- wp:spacer -->\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"></div>\n<!-- /wp:spacer --></div>\n<!-- /wp:column -->\n\n<!-- wp:column {\"width\":12} -->\n<div class=\"wp-block-column\" style=\"flex-basis:12%\"><!-- wp:spacer -->\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"></div>\n<!-- /wp:spacer --></div>\n<!-- /wp:column --></div>\n<!-- /wp:columns --></div></div>\n<!-- /wp:cover -->",
'viewportWidth' => 1000,
'categories' => array( 'header' ),
'description' => _x( 'A large hero section with a bright gradient background, a big heading and a filled button.', 'Block pattern description' ),

View File

@ -7,7 +7,7 @@
return array(
'title' => __( 'Large header with a heading' ),
'content' => "<!-- wp:cover {\"url\":\"https://s.w.org/images/core/5.5/don-quixote-06.jpg\",\"id\":165,\"dimRatio\":15,\"focalPoint\":{\"x\":\"0.40\",\"y\":\"0.26\"},\"minHeight\":375,\"minHeightUnit\":\"px\",\"contentPosition\":\"center center\",\"align\":\"wide\"} -->\n<div class=\"wp-block-cover alignwide has-background-dim-20 has-background-dim is-position-center-center\" style=\"background-image:url(https://s.w.org/images/core/5.5/don-quixote-06.jpg);min-height:375px;background-position:40% 26%\"><div class=\"wp-block-cover__inner-container\"><!-- wp:paragraph {\"align\":\"center\",\"placeholder\":\"Write title…\",\"style\":{\"typography\":{\"fontSize\":74,\"lineHeight\":\"1.1\"},\"color\":{\"text\":\"#fffffa\"}}} -->\n<p class=\"has-text-align-center has-text-color\" style=\"line-height:1.1;font-size:74px;color:#fffffa\"><strong>" . __( 'Don Quixote' ) . "</strong></p>\n<!-- /wp:paragraph --></div></div>\n<!-- /wp:cover -->",
'content' => "<!-- wp:cover {\"url\":\"https://s.w.org/images/core/5.5/don-quixote-06.jpg\",\"id\":165,\"dimRatio\":15,\"focalPoint\":{\"x\":\"0.40\",\"y\":\"0.26\"},\"minHeight\":375,\"minHeightUnit\":\"px\",\"contentPosition\":\"center center\",\"align\":\"wide\"} -->\n<div class=\"wp-block-cover alignwide has-background-dim-20 has-background-dim is-position-center-center\" style=\"background-image:url(https://s.w.org/images/core/5.5/don-quixote-06.jpg);min-height:375px;background-position:40% 26%\"><div class=\"wp-block-cover__inner-container\"><!-- wp:paragraph {\"align\":\"center\",\"placeholder\":\"" . __( 'Write title…' ) . "\",\"style\":{\"typography\":{\"fontSize\":74,\"lineHeight\":\"1.1\"},\"color\":{\"text\":\"#fffffa\"}}} -->\n<p class=\"has-text-align-center has-text-color\" style=\"line-height:1.1;font-size:74px;color:#fffffa\"><strong>" . __( 'Don Quixote' ) . "</strong></p>\n<!-- /wp:paragraph --></div></div>\n<!-- /wp:cover -->",
'viewportWidth' => 1000,
'categories' => array( 'header' ),
'description' => _x( 'A large hero section with an example background image and a heading in the center.', 'Block pattern description' ),

View File

@ -7,7 +7,7 @@
return array(
'title' => __( 'Quote' ),
'content' => "<!-- wp:group -->\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container\"><!-- wp:image {\"align\":\"center\",\"width\":164,\"height\":164,\"sizeSlug\":\"large\",\"className\":\"is-style-rounded\"} -->\n<div class=\"wp-block-image is-style-rounded\"><figure class=\"aligncenter size-large is-resized\"><img src=\"https://s.w.org/images/core/5.5/don-quixote-03.jpg\" alt=\"Pencil drawing of Don Quixote\" width=\"164\" height=\"164\"/></figure></div>\n<!-- /wp:image -->\n\n<!-- wp:quote {\"align\":\"center\",\"className\":\"is-style-large\"} -->\n<blockquote class=\"wp-block-quote has-text-align-center is-style-large\"><p>" . __( '"Do you see over yonder, friend Sancho, thirty or forty hulking giants? I intend to do battle with them and slay them."' ) . '</p><cite>' . __( '— Don Quixote' ) . "</cite></blockquote>\n<!-- /wp:quote -->\n\n<!-- wp:separator {\"className\":\"is-style-dots\"} -->\n<hr class=\"wp-block-separator is-style-dots\"/>\n<!-- /wp:separator --></div></div>\n<!-- /wp:group -->",
'content' => "<!-- wp:group -->\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container\"><!-- wp:image {\"align\":\"center\",\"width\":164,\"height\":164,\"sizeSlug\":\"large\",\"className\":\"is-style-rounded\"} -->\n<div class=\"wp-block-image is-style-rounded\"><figure class=\"aligncenter size-large is-resized\"><img src=\"https://s.w.org/images/core/5.5/don-quixote-03.jpg\" alt=\"" . __( 'Pencil drawing of Don Quixote' ) . "\" width=\"164\" height=\"164\"/></figure></div>\n<!-- /wp:image -->\n\n<!-- wp:quote {\"align\":\"center\",\"className\":\"is-style-large\"} -->\n<blockquote class=\"wp-block-quote has-text-align-center is-style-large\"><p>" . __( '"Do you see over yonder, friend Sancho, thirty or forty hulking giants? I intend to do battle with them and slay them."' ) . '</p><cite>' . __( '— Don Quixote' ) . "</cite></blockquote>\n<!-- /wp:quote -->\n\n<!-- wp:separator {\"className\":\"is-style-dots\"} -->\n<hr class=\"wp-block-separator is-style-dots\"/>\n<!-- /wp:separator --></div></div>\n<!-- /wp:group -->",
'viewportWidth' => 800,
'categories' => array( 'text' ),
'description' => _x( 'A quote and citation with an image above, and a separator at the bottom.', 'Block pattern description' ),

View File

@ -8,7 +8,7 @@
return array(
'title' => __( 'Three columns of text with buttons' ),
'categories' => array( 'columns' ),
'content' => "<!-- wp:group {\"align\":\"wide\"} -->\n<div class=\"wp-block-group alignwide\"><div class=\"wp-block-group__inner-container\"><!-- wp:columns {\"align\":\"wide\"} -->\n<div class=\"wp-block-columns alignwide\"><!-- wp:column -->\n<div class=\"wp-block-column\"><!-- wp:paragraph {\"textColor\":\"black\"} -->\n<p class=\"has-black-color has-text-color\">" . __( 'Which treats of the character and pursuits of the famous Don Quixote of La Mancha.' ) . "</p>\n<!-- /wp:paragraph -->\n\n<!-- wp:buttons -->\n<div class=\"wp-block-buttons\"><!-- wp:button {\"borderRadius\":50,\"style\":{\"color\":{\"text\":\"#ba0c49\"}},\"className\":\"is-style-outline\"} -->\n<div class=\"wp-block-button is-style-outline\"><a class=\"wp-block-button__link has-text-color\" style=\"border-radius:50px;color:#ba0c49\">Chapter One</a></div>\n<!-- /wp:button --></div>\n<!-- /wp:buttons --></div>\n<!-- /wp:column -->\n\n<!-- wp:column -->\n<div class=\"wp-block-column\"><!-- wp:paragraph {\"textColor\":\"black\"} -->\n<p class=\"has-black-color has-text-color\">" . __( 'Which treats of the first sally the ingenious Don Quixote made from home.' ) . "</p>\n<!-- /wp:paragraph -->\n\n<!-- wp:buttons -->\n<div class=\"wp-block-buttons\"><!-- wp:button {\"borderRadius\":50,\"style\":{\"color\":{\"text\":\"#ba0c49\"}},\"className\":\"is-style-outline\"} -->\n<div class=\"wp-block-button is-style-outline\"><a class=\"wp-block-button__link has-text-color\" style=\"border-radius:50px;color:#ba0c49\">Chapter Two</a></div>\n<!-- /wp:button --></div>\n<!-- /wp:buttons --></div>\n<!-- /wp:column -->\n\n<!-- wp:column -->\n<div class=\"wp-block-column\"><!-- wp:paragraph {\"textColor\":\"black\"} -->\n<p class=\"has-black-color has-text-color\">" . __( 'Wherein is related the droll way in which Don Quixote had himself dubbed a knight.' ) . "</p>\n<!-- /wp:paragraph -->\n\n<!-- wp:buttons -->\n<div class=\"wp-block-buttons\"><!-- wp:button {\"borderRadius\":50,\"style\":{\"color\":{\"text\":\"#ba0c49\"}},\"className\":\"is-style-outline\"} -->\n<div class=\"wp-block-button is-style-outline\"><a class=\"wp-block-button__link has-text-color\" style=\"border-radius:50px;color:#ba0c49\">Chapter Three</a></div>\n<!-- /wp:button --></div>\n<!-- /wp:buttons --></div>\n<!-- /wp:column --></div>\n<!-- /wp:columns --></div></div>\n<!-- /wp:group -->",
'content' => "<!-- wp:group {\"align\":\"wide\"} -->\n<div class=\"wp-block-group alignwide\"><div class=\"wp-block-group__inner-container\"><!-- wp:columns {\"align\":\"wide\"} -->\n<div class=\"wp-block-columns alignwide\"><!-- wp:column -->\n<div class=\"wp-block-column\"><!-- wp:paragraph -->\n<p>" . __( 'Which treats of the character and pursuits of the famous Don Quixote of La Mancha.' ) . "</p>\n<!-- /wp:paragraph -->\n\n<!-- wp:buttons -->\n<div class=\"wp-block-buttons\"><!-- wp:button {\"borderRadius\":50,\"style\":{\"color\":{\"text\":\"#ba0c49\"}},\"className\":\"is-style-outline\"} -->\n<div class=\"wp-block-button is-style-outline\"><a class=\"wp-block-button__link has-text-color\" style=\"border-radius:50px;color:#ba0c49\">" . __( 'Chapter One' ) . "</a></div>\n<!-- /wp:button --></div>\n<!-- /wp:buttons --></div>\n<!-- /wp:column -->\n\n<!-- wp:column -->\n<div class=\"wp-block-column\"><!-- wp:paragraph -->\n<p>" . __( 'Which treats of the first sally the ingenious Don Quixote made from home.' ) . "</p>\n<!-- /wp:paragraph -->\n\n<!-- wp:buttons -->\n<div class=\"wp-block-buttons\"><!-- wp:button {\"borderRadius\":50,\"style\":{\"color\":{\"text\":\"#ba0c49\"}},\"className\":\"is-style-outline\"} -->\n<div class=\"wp-block-button is-style-outline\"><a class=\"wp-block-button__link has-text-color\" style=\"border-radius:50px;color:#ba0c49\">" . __( 'Chapter Two' ) . "</a></div>\n<!-- /wp:button --></div>\n<!-- /wp:buttons --></div>\n<!-- /wp:column -->\n\n<!-- wp:column -->\n<div class=\"wp-block-column\"><!-- wp:paragraph -->\n<p>" . __( 'Wherein is related the droll way in which Don Quixote had himself dubbed a knight.' ) . "</p>\n<!-- /wp:paragraph -->\n\n<!-- wp:buttons -->\n<div class=\"wp-block-buttons\"><!-- wp:button {\"borderRadius\":50,\"style\":{\"color\":{\"text\":\"#ba0c49\"}},\"className\":\"is-style-outline\"} -->\n<div class=\"wp-block-button is-style-outline\"><a class=\"wp-block-button__link has-text-color\" style=\"border-radius:50px;color:#ba0c49\">" . __( 'Chapter Three' ) . "</a></div>\n<!-- /wp:button --></div>\n<!-- /wp:buttons --></div>\n<!-- /wp:column --></div>\n<!-- /wp:columns --></div></div>\n<!-- /wp:group -->",
'viewportWidth' => 1000,
'description' => _x( 'Three small columns of text, each with an outlined button with rounded corners at the bottom.', 'Block pattern description' ),
);

View File

@ -8,6 +8,6 @@
return array(
'title' => __( 'Two columns of text with images' ),
'categories' => array( 'columns' ),
'content' => "<!-- wp:group -->\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container\"><!-- wp:columns -->\n<div class=\"wp-block-columns\"><!-- wp:column -->\n<div class=\"wp-block-column\"><!-- wp:image {\"sizeSlug\":\"large\"} -->\n<figure class=\"wp-block-image size-large\"><img src=\"https://s.w.org/images/core/5.5/don-quixote-02.jpg\" alt=\"\"/></figure>\n<!-- /wp:image -->\n\n<!-- wp:paragraph {\"textColor\":\"black\",\"style\":{\"typography\":{\"fontSize\":18}}} -->\n<p class=\"has-black-color has-text-color\" style=\"font-size:18px\">" . __( 'You must know, then, that the above-named gentleman whenever he was at leisure (which was mostly all the year round) gave himself up to reading books of chivalry with such ardour and avidity that he almost entirely neglected the pursuit of his field-sports, and even the management of his property; and to such a pitch did his eagerness and infatuation go that he sold many an acre of tillageland to buy books of chivalry to read, and brought home as many of them as he could get.' ) . "</p>\n<!-- /wp:paragraph --></div>\n<!-- /wp:column -->\n\n<!-- wp:column -->\n<div class=\"wp-block-column\"><!-- wp:image {\"sizeSlug\":\"large\"} -->\n<figure class=\"wp-block-image size-large\"><img src=\"https://s.w.org/images/core/5.5/don-quixote-04.jpg\" alt=\"\"/></figure>\n<!-- /wp:image -->\n\n<!-- wp:paragraph {\"textColor\":\"black\",\"style\":{\"typography\":{\"fontSize\":18}}} -->\n<p class=\"has-black-color has-text-color\" style=\"font-size:18px\">" . __( 'But of all there were none he liked so well as those of the famous Feliciano de Silva\'s composition, for their lucidity of style and complicated conceits were as pearls in his sight, particularly when in his reading he came upon courtships and cartels, where he often found passages like "the reason of the unreason with which my reason is afflicted so weakens my reason that with reason I murmur at your beauty;" or again, "the high heavens render you deserving of the desert your greatness deserves."' ) . "</p>\n<!-- /wp:paragraph --></div>\n<!-- /wp:column --></div>\n<!-- /wp:columns --></div></div>\n<!-- /wp:group -->",
'content' => "<!-- wp:group -->\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container\"><!-- wp:columns -->\n<div class=\"wp-block-columns\"><!-- wp:column -->\n<div class=\"wp-block-column\"><!-- wp:image {\"sizeSlug\":\"large\"} -->\n<figure class=\"wp-block-image size-large\"><img src=\"https://s.w.org/images/core/5.5/don-quixote-02.jpg\" alt=\"\"/></figure>\n<!-- /wp:image -->\n\n<!-- wp:paragraph {\"style\":{\"typography\":{\"fontSize\":18}}} -->\n<p style=\"font-size:18px\">" . __( 'They must know, then, that the above-named gentleman whenever he was at leisure (which was mostly all the year round) gave himself up to reading books of chivalry with such ardour and avidity that he almost entirely neglected the pursuit of his field-sports, and even the management of his property; and to such a pitch did his eagerness and infatuation go that he sold many an acre of tillageland to buy books of chivalry to read, and brought home as many of them as he could get.' ) . "</p>\n<!-- /wp:paragraph --></div>\n<!-- /wp:column -->\n\n<!-- wp:column -->\n<div class=\"wp-block-column\"><!-- wp:image {\"sizeSlug\":\"large\"} -->\n<figure class=\"wp-block-image size-large\"><img src=\"https://s.w.org/images/core/5.5/don-quixote-04.jpg\" alt=\"\"/></figure>\n<!-- /wp:image -->\n\n<!-- wp:paragraph {\"style\":{\"typography\":{\"fontSize\":18}}} -->\n<p style=\"font-size:18px\">" . __( 'But of all there were none he liked so well as those of the famous Feliciano de Silva\'s composition, for their lucidity of style and complicated conceits were as pearls in his sight, particularly when in his reading he came upon courtships and cartels, where he often found passages like "the reason of the unreason with which my reason is afflicted so weakens my reason that with reason I murmur at your beauty;" or again, "the high heavens render you deserving of the desert your greatness deserves."' ) . "</p>\n<!-- /wp:paragraph --></div>\n<!-- /wp:column --></div>\n<!-- /wp:columns --></div></div>\n<!-- /wp:group -->",
'description' => _x( 'Two columns of text, each with an image on top.', 'Block pattern description' ),
);

View File

@ -8,6 +8,6 @@
return array(
'title' => __( 'Two columns of text' ),
'categories' => array( 'columns' ),
'content' => "<!-- wp:group -->\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container\"><!-- wp:heading {\"style\":{\"typography\":{\"fontSize\":38},\"color\":{\"text\":\"#ba0c49\"}}} -->\n<h2 class=\"has-text-color\" style=\"font-size:38px;color:#ba0c49\">" . __( 'Which treats of the character and pursuits of the famous gentleman Don Quixote of La Mancha' ) . "</h2>\n<!-- /wp:heading -->\n\n<!-- wp:columns -->\n<div class=\"wp-block-columns\"><!-- wp:column -->\n<div class=\"wp-block-column\"><!-- wp:paragraph {\"textColor\":\"black\",\"style\":{\"typography\":{\"fontSize\":18}}} -->\n<p class=\"has-black-color has-text-color\" style=\"font-size:18px\">" . __( 'In a village of La Mancha, the name of which I have no desire to call to mind, there lived not long since one of those gentlemen that keep a lance in the lance-rack, an old buckler, a lean hack, and a greyhound for coursing. An olla of rather more beef than mutton, a salad on most nights, scraps on Saturdays, lentils on Fridays, and a pigeon or so extra on Sundays, made away with three-quarters of his income.' ) . "</p>\n<!-- /wp:paragraph --></div>\n<!-- /wp:column -->\n\n<!-- wp:column -->\n<div class=\"wp-block-column\"><!-- wp:paragraph {\"textColor\":\"black\",\"style\":{\"typography\":{\"fontSize\":18}}} -->\n<p class=\"has-black-color has-text-color\" style=\"font-size:18px\">" . __( 'The rest of it went in a doublet of fine cloth and velvet breeches and shoes to match for holidays, while on week-days he made a brave figure in his best homespun. He had in his house a housekeeper past forty, a niece under twenty, and a lad for the field and market-place, who used to saddle the hack as well as handle the bill-hook. The age of this gentleman of ours was bordering on fifty; he was of a hardy habit, spare, gaunt-featured, a very early riser and a great sportsman.' ) . "</p>\n<!-- /wp:paragraph --></div>\n<!-- /wp:column --></div>\n<!-- /wp:columns --></div></div>\n<!-- /wp:group -->",
'content' => "<!-- wp:group -->\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container\"><!-- wp:heading {\"style\":{\"typography\":{\"fontSize\":38},\"color\":{\"text\":\"#ba0c49\"}}} -->\n<h2 class=\"has-text-color\" style=\"font-size:38px;color:#ba0c49\">" . __( 'Which treats of the character and pursuits of the famous gentleman Don Quixote of La Mancha' ) . "</h2>\n<!-- /wp:heading -->\n\n<!-- wp:columns -->\n<div class=\"wp-block-columns\"><!-- wp:column -->\n<div class=\"wp-block-column\"><!-- wp:paragraph {\"style\":{\"typography\":{\"fontSize\":18}}} -->\n<p style=\"font-size:18px\">" . __( 'In a village of La Mancha, the name of which I have no desire to call to mind, there lived not long since one of those gentlemen that keep a lance in the lance-rack, an old buckler, a lean hack, and a greyhound for coursing. An olla of rather more beef than mutton, a salad on most nights, scraps on Saturdays, lentils on Fridays, and a pigeon or so extra on Sundays, made away with three-quarters of his income.' ) . "</p>\n<!-- /wp:paragraph --></div>\n<!-- /wp:column -->\n\n<!-- wp:column -->\n<div class=\"wp-block-column\"><!-- wp:paragraph {\"style\":{\"typography\":{\"fontSize\":18}}} -->\n<p style=\"font-size:18px\">" . __( 'The rest of it went in a doublet of fine cloth and velvet breeches and shoes to match for holidays, while on week-days he made a brave figure in his best homespun. He had in his house a housekeeper past forty, a niece under twenty, and a lad for the field and market-place, who used to saddle the hack as well as handle the bill-hook. The age of this gentleman of ours was bordering on fifty; he was of a hardy habit, spare, gaunt-featured, a very early riser and a great sportsman.' ) . "</p>\n<!-- /wp:paragraph --></div>\n<!-- /wp:column --></div>\n<!-- /wp:columns --></div></div>\n<!-- /wp:group -->",
'description' => _x( 'Two columns of text preceded by a long heading.', 'Block pattern description' ),
);

View File

@ -9,5 +9,5 @@ return array(
'title' => __( 'Two images side by side' ),
'categories' => array( 'gallery' ),
'description' => _x( 'An image gallery with two example images.', 'Block pattern description' ),
'content' => "<!-- wp:gallery {\"ids\":[null,null],\"align\":\"wide\"} -->\n<figure class=\"wp-block-gallery alignwide columns-2 is-cropped\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><img src=\"https://s.w.org/images/core/5.5/don-quixote-05.jpg\" alt=\"" . __( 'An old pencil drawing of Don Quixote and Sancho Panza sitting on their horses, by Wilhelm Marstrand.' ) . "\"/></figure></li><li class=\"blocks-gallery-item\"><figure><img src=\"https://s.w.org/images/core/5.5/don-quixote-01.jpg\" alt=\"' . __( 'An old pencil drawing of Don Quixote and Sancho Panza sitting on their horses, by Wilhelm Marstrand.' ) . '\"/></figure></li></ul></figure>\n<!-- /wp:gallery -->",
'content' => "<!-- wp:gallery {\"ids\":[null,null],\"align\":\"wide\"} -->\n<figure class=\"wp-block-gallery alignwide columns-2 is-cropped\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><img src=\"https://s.w.org/images/core/5.5/don-quixote-05.jpg\" alt=\"" . __( 'An old pencil drawing of Don Quixote and Sancho Panza sitting on their horses, by Wilhelm Marstrand.' ) . '"/></figure></li><li class="blocks-gallery-item"><figure><img src="https://s.w.org/images/core/5.5/don-quixote-01.jpg" alt="' . __( 'An old pencil drawing of Don Quixote and Sancho Panza sitting on their horses, by Wilhelm Marstrand.' ) . "\"/></figure></li></ul></figure>\n<!-- /wp:gallery -->",
);

View File

@ -410,8 +410,11 @@ function redirect_canonical( $requested_url = null, $do_redirect = true ) {
$redirect['query'] = remove_query_arg( 'page', $redirect['query'] );
}
// Paging and feeds.
if ( get_query_var( 'paged' ) || is_feed() || get_query_var( 'cpage' ) ) {
if ( get_query_var( 'sitemap' ) ) {
$redirect_url = get_sitemap_url( get_query_var( 'sitemap' ), get_query_var( 'sitemap-subtype' ), get_query_var( 'paged' ) );
$redirect['query'] = remove_query_arg( array( 'sitemap', 'sitemap-subtype', 'paged' ), $redirect['query'] );
} elseif ( get_query_var( 'paged' ) || is_feed() || get_query_var( 'cpage' ) ) {
// Paging and feeds.
$paged = get_query_var( 'paged' );
$feed = get_query_var( 'feed' );
$cpage = get_query_var( 'cpage' );
@ -508,11 +511,6 @@ function redirect_canonical( $requested_url = null, $do_redirect = true ) {
$redirect['path'] = trailingslashit( $redirect['path'] ) . $addl_path;
}
// Remove trailing slash for sitemaps requests.
if ( ! empty( get_query_var( 'sitemap' ) ) ) {
$redirect['path'] = untrailingslashit( $redirect['path'] );
}
$redirect_url = $redirect['scheme'] . '://' . $redirect['host'] . $redirect['path'];
}

View File

@ -1,7 +1,7 @@
##
## Bundle of CA Root Certificates
##
## Certificate data from Mozilla as of: Wed Aug 28 03:12:10 2019 GMT
## Certificate data from Mozilla as of: Wed Jul 22 03:12:14 2020 GMT
## Includes a WordPress Modification - We include the 'legacy' 1024bit certificates
## for backward compatibility. See https://core.trac.wordpress.org/ticket/34935#comment:10
##
@ -19,6 +19,30 @@
## SHA256: fffa309937c3be940649293f749b8207fabc6eb224e50e4bb3f2c5e44e0d6a6b
##
EE Certification Centre Root CA
===============================
-----BEGIN CERTIFICATE-----
MIIEAzCCAuugAwIBAgIQVID5oHPtPwBMyonY43HmSjANBgkqhkiG9w0BAQUFADB1MQswCQYDVQQG
EwJFRTEiMCAGA1UECgwZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1czEoMCYGA1UEAwwfRUUgQ2Vy
dGlmaWNhdGlvbiBDZW50cmUgUm9vdCBDQTEYMBYGCSqGSIb3DQEJARYJcGtpQHNrLmVlMCIYDzIw
MTAxMDMwMTAxMDMwWhgPMjAzMDEyMTcyMzU5NTlaMHUxCzAJBgNVBAYTAkVFMSIwIAYDVQQKDBlB
UyBTZXJ0aWZpdHNlZXJpbWlza2Vza3VzMSgwJgYDVQQDDB9FRSBDZXJ0aWZpY2F0aW9uIENlbnRy
ZSBSb290IENBMRgwFgYJKoZIhvcNAQkBFglwa2lAc2suZWUwggEiMA0GCSqGSIb3DQEBAQUAA4IB
DwAwggEKAoIBAQDIIMDs4MVLqwd4lfNE7vsLDP90jmG7sWLqI9iroWUyeuuOF0+W2Ap7kaJjbMeM
TC55v6kF/GlclY1i+blw7cNRfdCT5mzrMEvhvH2/UpvObntl8jixwKIy72KyaOBhU8E2lf/slLo2
rpwcpzIP5Xy0xm90/XsY6KxX7QYgSzIwWFv9zajmofxwvI6Sc9uXp3whrj3B9UiHbCe9nyV0gVWw
93X2PaRka9ZP585ArQ/dMtO8ihJTmMmJ+xAdTX7Nfh9WDSFwhfYggx/2uh8Ej+p3iDXE/+pOoYtN
P2MbRMNE1CV2yreN1x5KZmTNXMWcg+HCCIia7E6j8T4cLNlsHaFLAgMBAAGjgYowgYcwDwYDVR0T
AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBLyWj7qVhy/zQas8fElyalL1BSZ
MEUGA1UdJQQ+MDwGCCsGAQUFBwMCBggrBgEFBQcDAQYIKwYBBQUHAwMGCCsGAQUFBwMEBggrBgEF
BQcDCAYIKwYBBQUHAwkwDQYJKoZIhvcNAQEFBQADggEBAHv25MANqhlHt01Xo/6tu7Fq1Q+e2+Rj
xY6hUFaTlrg4wCQiZrxTFGGVv9DHKpY5P30osxBAIWrEr7BSdxjhlthWXePdNl4dp1BUoMUq5KqM
lIpPnTX/dqQGE5Gion0ARD9V04I8GtVbvFZMIi5GQ4okQC3zErg7cBqklrkar4dBGmoYDQZPxz5u
uSlNDUmJEYcyW+ZLBMjkXOZ0c5RdFpgTlf7727FE5TpwrDdr5rMzcijJs1eg9gIWiAYLtqZLICjU
3j2LrTcFU3T+bsy8QxdxXvnFzBqpYe73dgzzcvRyrc9yAjYHR8/vGVCJYMzpJJUPwssd8m92kMfM
dcGWxZ0=
-----END CERTIFICATE-----
Thawte Server CA
================
-----BEGIN CERTIFICATE-----
@ -93,40 +117,6 @@ MA0GCSqGSIb3DQEBBQUAA4GBAFFNzb5cy5gZnBWyATl4Lk0PZ3BwmcYQWpSkU01UbSuvDV1Ai2TT
Oaxxp5EJb+RxBrO6WVcmeQD2+A2iMzAo1KpYoJ2daZH9
-----END CERTIFICATE-----
Equifax Secure Global eBusiness CA
==================================
-----BEGIN CERTIFICATE-----
MIICkDCCAfmgAwIBAgIBATANBgkqhkiG9w0BAQQFADBaMQswCQYDVQQGEwJVUzEcMBoGA1UEChMT
RXF1aWZheCBTZWN1cmUgSW5jLjEtMCsGA1UEAxMkRXF1aWZheCBTZWN1cmUgR2xvYmFsIGVCdXNp
bmVzcyBDQS0xMB4XDTk5MDYyMTA0MDAwMFoXDTIwMDYyMTA0MDAwMFowWjELMAkGA1UEBhMCVVMx
HDAaBgNVBAoTE0VxdWlmYXggU2VjdXJlIEluYy4xLTArBgNVBAMTJEVxdWlmYXggU2VjdXJlIEds
b2JhbCBlQnVzaW5lc3MgQ0EtMTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAuucXkAJlsTRV
PEnCUdXfp9E3j9HngXNBUmCbnaEXJnitx7HoJpQytd4zjTov2/KaelpzmKNc6fuKcxtc58O/gGzN
qfTWK8D3+ZmqY6KxRwIP1ORROhI8bIpaVIRw28HFkM9yRcuoWcDNM50/o5brhTMhHD4ePmBudpxn
hcXIw2ECAwEAAaNmMGQwEQYJYIZIAYb4QgEBBAQDAgAHMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0j
BBgwFoAUvqigdHJQa0S3ySPY+6j/s1draGwwHQYDVR0OBBYEFL6ooHRyUGtEt8kj2Puo/7NXa2hs
MA0GCSqGSIb3DQEBBAUAA4GBADDiAVGqx+pf2rnQZQ8w1j7aDRRJbpGTJxQx78T3LUX47Me/okEN
I7SS+RkAZ70Br83gcfxaz2TE4JaY0KNA4gGK7ycH8WUBikQtBmV1UsCGECAhX2xrD2yuCRyv8qIY
NMR1pHMc8Y3c7635s3a0kr/clRAevsvIO1qEYBlWlKlV
-----END CERTIFICATE-----
Equifax Secure eBusiness CA 1
=============================
-----BEGIN CERTIFICATE-----
MIICgjCCAeugAwIBAgIBBDANBgkqhkiG9w0BAQQFADBTMQswCQYDVQQGEwJVUzEcMBoGA1UEChMT
RXF1aWZheCBTZWN1cmUgSW5jLjEmMCQGA1UEAxMdRXF1aWZheCBTZWN1cmUgZUJ1c2luZXNzIENB
LTEwHhcNOTkwNjIxMDQwMDAwWhcNMjAwNjIxMDQwMDAwWjBTMQswCQYDVQQGEwJVUzEcMBoGA1UE
ChMTRXF1aWZheCBTZWN1cmUgSW5jLjEmMCQGA1UEAxMdRXF1aWZheCBTZWN1cmUgZUJ1c2luZXNz
IENBLTEwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAM4vGbwXt3fek6lfWg0XTzQaDJj0ItlZ
1MRoRvC0NcWFAyDGr0WlIVFFQesWWDYyb+JQYmT5/VGcqiTZ9J2DKocKIdMSODRsjQBuWqDZQu4a
IZX5UkxVWsUPOE9G+m34LjXWHXzr4vCwdYDIqROsvojvOm6rXyo4YgKwEnv+j6YDAgMBAAGjZjBk
MBEGCWCGSAGG+EIBAQQEAwIABzAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFEp4MlIR21kW
Nl7fwRQ2QGpHfEyhMB0GA1UdDgQWBBRKeDJSEdtZFjZe38EUNkBqR3xMoTANBgkqhkiG9w0BAQQF
AAOBgQB1W6ibAxHm6VZMzfmpTMANmvPMZWnmJXbMWbfWVMMdzZmsGd20hdXgPfxiIKeES1hl8eL5
lSE/9dR+WB5Hh1Q+WKG1tfgq73HnvMP2sUlG4tega+VWeponmHxGYhTnyfxuAxJ5gDgdSIKN/Bf+
KpYrtWKmpj29f5JZzVoqgrI3eQ==
-----END CERTIFICATE-----
America Online Root Certification Authority 1
=============================================
-----BEGIN CERTIFICATE-----
@ -196,25 +186,6 @@ bj9T/UWZYB2oK0z5XqcJ2HUw19JlYD1n1khVdWk/kfVIC0dpImmClr7JyDiGSnoscxlIaU5rfGW/
D/xwzoiQ
-----END CERTIFICATE-----
RSA Root Certificate 1
======================
-----BEGIN CERTIFICATE-----
MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRp
b24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs
YXNzIDMgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZh
bGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNjAw
MjIzM1oXDTE5MDYyNjAwMjIzM1owgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0
d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENsYXNzIDMg
UG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0
LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMIGfMA0GCSqGSIb3DQEBAQUA
A4GNADCBiQKBgQDjmFGWHOjVsQaBalfDcnWTq8+epvzzFlLWLU2fNUSoLgRNB0mKOCn1dzfnt6td
3zZxFJmP3MKS8edgkpfs2Ejcv8ECIMYkpChMMFp2bbFc893enhBxoYjHW5tBbcqwuI4V7q0zK89H
BFx1cQqYJJgpp0lZpd34t0NiYfPT4tBVPwIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFa7AliEZwgs
3x/be0kz9dNnnfS0ChCzycUs4pJqcXgn8nCDQtM+z6lU9PHYkhaM0QTLS6vJn0WuPIqpsHEzXcjF
V9+vqDWzf4mH6eglkrh/hXqu1rweN1gqZ8mRzyqBPu3GOd/APhmcGcwTTYJBtYze4D1gCCAPRX5r
on+jjBXu
-----END CERTIFICATE-----
GlobalSign Root CA
==================
-----BEGIN CERTIFICATE-----
@ -327,30 +298,6 @@ Y71k5h+3zvDyny67G7fyUIhzksLi4xaNmjICq44Y3ekQEe5+NauQrz4wlHrQMz2nZQ/1/I6eYs9H
RCwBXbsdtTLSR9I4LtD+gdwyah617jzV/OeBHRnDJELqYzmp
-----END CERTIFICATE-----
AddTrust External Root
======================
-----BEGIN CERTIFICATE-----
MIIENjCCAx6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBvMQswCQYDVQQGEwJTRTEUMBIGA1UEChML
QWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFkZFRydXN0IEV4dGVybmFsIFRUUCBOZXR3b3JrMSIwIAYD
VQQDExlBZGRUcnVzdCBFeHRlcm5hbCBDQSBSb290MB4XDTAwMDUzMDEwNDgzOFoXDTIwMDUzMDEw
NDgzOFowbzELMAkGA1UEBhMCU0UxFDASBgNVBAoTC0FkZFRydXN0IEFCMSYwJAYDVQQLEx1BZGRU
cnVzdCBFeHRlcm5hbCBUVFAgTmV0d29yazEiMCAGA1UEAxMZQWRkVHJ1c3QgRXh0ZXJuYWwgQ0Eg
Um9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALf3GjPm8gAELTngTlvtH7xsD821
+iO2zt6bETOXpClMfZOfvUq8k+0DGuOPz+VtUFrWlymUWoCwSXrbLpX9uMq/NzgtHj6RQa1wVsfw
Tz/oMp50ysiQVOnGXw94nZpAPA6sYapeFI+eh6FqUNzXmk6vBbOmcZSccbNQYArHE504B4YCqOmo
aSYYkKtMsE8jqzpPhNjfzp/haW+710LXa0Tkx63ubUFfclpxCDezeWWkWaCUN/cALw3CknLa0Dhy
2xSoRcRdKn23tNbE7qzNE0S3ySvdQwAl+mG5aWpYIxG3pzOPVnVZ9c0p10a3CitlttNCbxWyuHv7
7+ldU9U0WicCAwEAAaOB3DCB2TAdBgNVHQ4EFgQUrb2YejS0Jvf6xCZU7wO94CTLVBowCwYDVR0P
BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wgZkGA1UdIwSBkTCBjoAUrb2YejS0Jvf6xCZU7wO94CTL
VBqhc6RxMG8xCzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtBZGRUcnVzdCBBQjEmMCQGA1UECxMdQWRk
VHJ1c3QgRXh0ZXJuYWwgVFRQIE5ldHdvcmsxIjAgBgNVBAMTGUFkZFRydXN0IEV4dGVybmFsIENB
IFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBALCb4IUlwtYj4g+WBpKdQZic2YR5gdkeWxQHIzZl
j7DYd7usQWxHYINRsPkyPef89iYTx4AWpb9a/IfPeHmJIZriTAcKhjW88t5RxNKWt9x+Tu5w/Rw5
6wwCURQtjr0W4MHfRnXnJK3s9EK0hZNwEGe6nQY1ShjTK3rMUUKhemPR5ruhxSvCNr4TDea9Y355
e6cJDUCrat2PisP29owaQgVR1EX1n6diIWgVIEM8med8vSTYqZEXc4g/VhsxOBi0cQ+azcgOno4u
G+GMmIPLHzHxREzGBHNJdmAPx/i9F4BrLunMTA5amnkPIAou1Z5jJh5VkpTYghdae9C8x49OhgQ=
-----END CERTIFICATE-----
Entrust Root Certification Authority
====================================
-----BEGIN CERTIFICATE-----
@ -789,28 +736,6 @@ mNEVX58Svnw2Yzi9RKR/5CYrCsSXaQ3pjOLAEFe4yHYSkVXySGnYvCoCWw9E1CAx2/S6cCZdkGCe
vEsXCS+0yx5DaMkHJ8HSXPfqIbloEpw8nL+e/IBcm2PN7EeqJSdnoDfzAIJ9VNep+OkuE6N36B9K
-----END CERTIFICATE-----
Certplus Class 2 Primary CA
===========================
-----BEGIN CERTIFICATE-----
MIIDkjCCAnqgAwIBAgIRAIW9S/PY2uNp9pTXX8OlRCMwDQYJKoZIhvcNAQEFBQAwPTELMAkGA1UE
BhMCRlIxETAPBgNVBAoTCENlcnRwbHVzMRswGQYDVQQDExJDbGFzcyAyIFByaW1hcnkgQ0EwHhcN
OTkwNzA3MTcwNTAwWhcNMTkwNzA2MjM1OTU5WjA9MQswCQYDVQQGEwJGUjERMA8GA1UEChMIQ2Vy
dHBsdXMxGzAZBgNVBAMTEkNsYXNzIDIgUHJpbWFyeSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP
ADCCAQoCggEBANxQltAS+DXSCHh6tlJw/W/uz7kRy1134ezpfgSN1sxvc0NXYKwzCkTsA18cgCSR
5aiRVhKC9+Ar9NuuYS6JEI1rbLqzAr3VNsVINyPi8Fo3UjMXEuLRYE2+L0ER4/YXJQyLkcAbmXuZ
Vg2v7tK8R1fjeUl7NIknJITesezpWE7+Tt9avkGtrAjFGA7v0lPubNCdEgETjdyAYveVqUSISnFO
YFWe2yMZeVYHDD9jC1yw4r5+FfyUM1hBOHTE4Y+L3yasH7WLO7dDWWuwJKZtkIvEcupdM5i3y95e
e++U8Rs+yskhwcWYAqqi9lt3m/V+llU0HGdpwPFC40es/CgcZlUCAwEAAaOBjDCBiTAPBgNVHRME
CDAGAQH/AgEKMAsGA1UdDwQEAwIBBjAdBgNVHQ4EFgQU43Mt38sOKAze3bOkynm4jrvoMIkwEQYJ
YIZIAYb4QgEBBAQDAgEGMDcGA1UdHwQwMC4wLKAqoCiGJmh0dHA6Ly93d3cuY2VydHBsdXMuY29t
L0NSTC9jbGFzczIuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQCnVM+IRBnL39R/AN9WM2K191EBkOvD
P9GIROkkXe/nFL0gt5o8AP5tn9uQ3Nf0YtaLcF3n5QRIqWh8yfFC82x/xXp8HVGIutIKPidd3i1R
TtMTZGnkLuPT55sJmabglZvOGtd/vjzOUrMRFcEPF80Du5wlFbqidon8BvEY0JNLDnyCt6X09l/+
7UCmnYR0ObncHoUW2ikbhiMAybuJfm6AiB4vFLQDJKgybwOaRywwvlbGp0ICcBvqQNi6BQNwB6SW
//1IMwrh3KWBkJtN3X3n57LNXMhqlfil9o3EXXgIvnsG1knPGTZQIy4I5p4FTUcY1Rbpsda2ENW7
l7+ijrRU
-----END CERTIFICATE-----
DST Root CA X3
==============
-----BEGIN CERTIFICATE-----
@ -1118,28 +1043,6 @@ PBS1xp81HlDQwY9qcEQCYsuuHWhBp6pX6FOqB9IG9tUUBguRA3UsbHK1YZWaDYu5Def131TN3ubY
WyH8EZE0vkHve52Xdf+XlcCWWC/qu0bXu+TZLg==
-----END CERTIFICATE-----
Deutsche Telekom Root CA 2
==========================
-----BEGIN CERTIFICATE-----
MIIDnzCCAoegAwIBAgIBJjANBgkqhkiG9w0BAQUFADBxMQswCQYDVQQGEwJERTEcMBoGA1UEChMT
RGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0GA1UECxMWVC1UZWxlU2VjIFRydXN0IENlbnRlcjEjMCEG
A1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBSb290IENBIDIwHhcNOTkwNzA5MTIxMTAwWhcNMTkwNzA5
MjM1OTAwWjBxMQswCQYDVQQGEwJERTEcMBoGA1UEChMTRGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0G
A1UECxMWVC1UZWxlU2VjIFRydXN0IENlbnRlcjEjMCEGA1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBS
b290IENBIDIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCrC6M14IspFLEUha88EOQ5
bzVdSq7d6mGNlUn0b2SjGmBmpKlAIoTZ1KXleJMOaAGtuU1cOs7TuKhCQN/Po7qCWWqSG6wcmtoI
KyUn+WkjR/Hg6yx6m/UTAtB+NHzCnjwAWav12gz1MjwrrFDa1sPeg5TKqAyZMg4ISFZbavva4VhY
AUlfckE8FQYBjl2tqriTtM2e66foai1SNNs671x1Udrb8zH57nGYMsRUFUQM+ZtV7a3fGAigo4aK
Se5TBY8ZTNXeWHmb0mocQqvF1afPaA+W5OFhmHZhyJF81j4A4pFQh+GdCuatl9Idxjp9y7zaAzTV
jlsB9WoHtxa2bkp/AgMBAAGjQjBAMB0GA1UdDgQWBBQxw3kbuvVT1xfgiXotF2wKsyudMzAPBgNV
HRMECDAGAQH/AgEFMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOCAQEAlGRZrTlk5ynr
E/5aw4sTV8gEJPB0d8Bg42f76Ymmg7+Wgnxu1MM9756AbrsptJh6sTtU6zkXR34ajgv8HzFZMQSy
zhfzLMdiNlXiItiJVbSYSKpk+tYcNthEeFpaIzpXl/V6ME+un2pMSyuOoAPjPuCp1NJ70rOo4nI8
rZ7/gFnkm0W09juwzTkZmDLl6iFhkOQxIY40sfcvNUqFENrnijchvllj4PKFiDFT1FQUhXB59C4G
dyd1Lx+4ivn+xbrYNuSD7Odlt79jWvNGr4GUN9RBjNYj1h7P9WgbRGOiWrqnNVmh5XAFmw4jV5mU
Cm26OWMohpLzGITY+9HPBVZkVw==
-----END CERTIFICATE-----
Cybertrust Global Root
======================
-----BEGIN CERTIFICATE-----
@ -1367,38 +1270,6 @@ NwUASZQDhETnv0Mxz3WLJdH0pmT1kvarBes96aULNmLazAZfNou2XjG4Kvte9nHfRCaexOYNkbQu
dZWAUWpLMKawYqGT8ZvYzsRjdT9ZR7E=
-----END CERTIFICATE-----
Staat der Nederlanden Root CA - G2
==================================
-----BEGIN CERTIFICATE-----
MIIFyjCCA7KgAwIBAgIEAJiWjDANBgkqhkiG9w0BAQsFADBaMQswCQYDVQQGEwJOTDEeMBwGA1UE
CgwVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSswKQYDVQQDDCJTdGFhdCBkZXIgTmVkZXJsYW5kZW4g
Um9vdCBDQSAtIEcyMB4XDTA4MDMyNjExMTgxN1oXDTIwMDMyNTExMDMxMFowWjELMAkGA1UEBhMC
TkwxHjAcBgNVBAoMFVN0YWF0IGRlciBOZWRlcmxhbmRlbjErMCkGA1UEAwwiU3RhYXQgZGVyIE5l
ZGVybGFuZGVuIFJvb3QgQ0EgLSBHMjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMVZ
5291qj5LnLW4rJ4L5PnZyqtdj7U5EILXr1HgO+EASGrP2uEGQxGZqhQlEq0i6ABtQ8SpuOUfiUtn
vWFI7/3S4GCI5bkYYCjDdyutsDeqN95kWSpGV+RLufg3fNU254DBtvPUZ5uW6M7XxgpT0GtJlvOj
CwV3SPcl5XCsMBQgJeN/dVrlSPhOewMHBPqCYYdu8DvEpMfQ9XQ+pV0aCPKbJdL2rAQmPlU6Yiil
e7Iwr/g3wtG61jj99O9JMDeZJiFIhQGp5Rbn3JBV3w/oOM2ZNyFPXfUib2rFEhZgF1XyZWampzCR
OME4HYYEhLoaJXhena/MUGDWE4dS7WMfbWV9whUYdMrhfmQpjHLYFhN9C0lK8SgbIHRrxT3dsKpI
CT0ugpTNGmXZK4iambwYfp/ufWZ8Pr2UuIHOzZgweMFvZ9C+X+Bo7d7iscksWXiSqt8rYGPy5V65
48r6f1CGPqI0GAwJaCgRHOThuVw+R7oyPxjMW4T182t0xHJ04eOLoEq9jWYv6q012iDTiIJh8BIi
trzQ1aTsr1SIJSQ8p22xcik/Plemf1WvbibG/ufMQFxRRIEKeN5KzlW/HdXZt1bv8Hb/C3m1r737
qWmRRpdogBQ2HbN/uymYNqUg+oJgYjOk7Na6B6duxc8UpufWkjTYgfX8HV2qXB72o007uPc5AgMB
AAGjgZcwgZQwDwYDVR0TAQH/BAUwAwEB/zBSBgNVHSAESzBJMEcGBFUdIAAwPzA9BggrBgEFBQcC
ARYxaHR0cDovL3d3dy5wa2lvdmVyaGVpZC5ubC9wb2xpY2llcy9yb290LXBvbGljeS1HMjAOBgNV
HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJFoMocVHYnitfGsNig0jQt8YojrMA0GCSqGSIb3DQEBCwUA
A4ICAQCoQUpnKpKBglBu4dfYszk78wIVCVBR7y29JHuIhjv5tLySCZa59sCrI2AGeYwRTlHSeYAz
+51IvuxBQ4EffkdAHOV6CMqqi3WtFMTC6GY8ggen5ieCWxjmD27ZUD6KQhgpxrRW/FYQoAUXvQwj
f/ST7ZwaUb7dRUG/kSS0H4zpX897IZmflZ85OkYcbPnNe5yQzSipx6lVu6xiNGI1E0sUOlWDuYaN
kqbG9AclVMwWVxJKgnjIFNkXgiYtXSAfea7+1HAWFpWD2DU5/1JddRwWxRNVz0fMdWVSSt7wsKfk
CpYL+63C4iWEst3kvX5ZbJvw8NjnyvLplzh+ib7M+zkXYT9y2zqR2GUBGR2tUKRXCnxLvJxxcypF
URmFzI79R6d0lR2o0a9OF7FpJsKqeFdbxU2n5Z4FF5TKsl+gSRiNNOkmbEgeqmiSBeGCc1qb3Adb
CG19ndeNIdn8FCCqwkXfP+cAslHkwvgFuXkajDTznlvkN1trSt8sV4pAWja63XVECDdCcAz+3F4h
oKOKwJCcaNpQ5kUQR3i2TtJlycM33+FCY7BXN0Ute4qcvwXqZVUz9zkQxSgqIXobisQk+T8VyJoV
IPVVYpbtbZNQvOSqeK3Zywplh6ZmwcSBo3c6WB4L7oOLnR7SUqTMHW+wmG2UMbX4cQrcufx9MmDm
66+KAQ==
-----END CERTIFICATE-----
Hongkong Post Root CA 1
=======================
-----BEGIN CERTIFICATE-----
@ -3072,37 +2943,6 @@ MGUCMDqLIfG9fhGt0O9Yli/W651+kI0rz2ZVwyzjKKlwCkcO8DdZEv8tmZQoTipPNU0zWgIxAOp1
AE47xDqUEpHJWEadIRNyp4iciuRMStuW1KyLa2tJElMzrdfkviT8tQp21KW8EA==
-----END CERTIFICATE-----
LuxTrust Global Root 2
======================
-----BEGIN CERTIFICATE-----
MIIFwzCCA6ugAwIBAgIUCn6m30tEntpqJIWe5rgV0xZ/u7EwDQYJKoZIhvcNAQELBQAwRjELMAkG
A1UEBhMCTFUxFjAUBgNVBAoMDUx1eFRydXN0IFMuQS4xHzAdBgNVBAMMFkx1eFRydXN0IEdsb2Jh
bCBSb290IDIwHhcNMTUwMzA1MTMyMTU3WhcNMzUwMzA1MTMyMTU3WjBGMQswCQYDVQQGEwJMVTEW
MBQGA1UECgwNTHV4VHJ1c3QgUy5BLjEfMB0GA1UEAwwWTHV4VHJ1c3QgR2xvYmFsIFJvb3QgMjCC
AiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANeFl78RmOnwYoNMPIf5U2o3C/IPPIfOb9wm
Kb3FibrJgz337spbxm1Jc7TJRqMbNBM/wYlFV/TZsfs2ZUv7COJIcRHIbjuend+JZTemhfY7RBi2
xjcwYkSSl2l9QjAk5A0MiWtj3sXh306pFGxT4GHO9hcvHTy95iJMHZP1EMShduxq3sVs35a0VkBC
wGKSMKEtFZSg0iAGCW5qbeXrt77U8PEVfIvmTroTzEsnXpk8F12PgX8zPU/TPxvsXD/wPEx1bvKm
1Z3aLQdjAsZy6ZS8TEmVT4hSyNvoaYL4zDRbIvCGp4m9SAptZoFtyMhk+wHh9OHe2Z7d21vUKpkm
FRseTJIpgp7VkoGSQXAZ96Tlk0u8d2cx3Rz9MXANF5kM+Qw5GSoXtTBxVdUPrljhPS80m8+f9niF
wpN6cj5mj5wWEWCPnolvZ77gR1o7DJpni89Gxq44o/KnvObWhWszJHAiS8sIm7vI+AIpHb4gDEa/
a4ebsypmQjVGbKq6rfmYe+lQVRQxv7HaLe2ArWgk+2mr2HETMOZns4dA/Yl+8kPREd8vZS9kzl8U
ubG/Mb2HeFpZZYiq/FkySIbWTLkpS5XTdvN3JW1CHDiDTf2jX5t/Lax5Gw5CMZdjpPuKadUiDTSQ
MC6otOBttpSsvItO13D8xTiOZCXhTTmQzsmHhFhxAgMBAAGjgagwgaUwDwYDVR0TAQH/BAUwAwEB
/zBCBgNVHSAEOzA5MDcGByuBKwEBAQowLDAqBggrBgEFBQcCARYeaHR0cHM6Ly9yZXBvc2l0b3J5
Lmx1eHRydXN0Lmx1MA4GA1UdDwEB/wQEAwIBBjAfBgNVHSMEGDAWgBT/GCh2+UgFLKGu8SsbK7JT
+Et8szAdBgNVHQ4EFgQU/xgodvlIBSyhrvErGyuyU/hLfLMwDQYJKoZIhvcNAQELBQADggIBAGoZ
FO1uecEsh9QNcH7X9njJCwROxLHOk3D+sFTAMs2ZMGQXvw/l4jP9BzZAcg4atmpZ1gDlaCDdLnIN
H2pkMSCEfUmmWjfrRcmF9dTHF5kH5ptV5AzoqbTOjFu1EVzPig4N1qx3gf4ynCSecs5U89BvolbW
7MM3LGVYvlcAGvI1+ut7MV3CwRI9loGIlonBWVx65n9wNOeD4rHh4bhY79SV5GCc8JaXcozrhAIu
ZY+kt9J/Z93I055cqqmkoCUUBpvsT34tC38ddfEz2O3OuHVtPlu5mB0xDVbYQw8wkbIEa91WvpWA
VWe+2M2D2RjuLg+GLZKecBPs3lHJQ3gCpU3I+V/EkVhGFndadKpAvAefMLmx9xIX3eP/JEAdemrR
TxgKqpAd60Ae36EeRJIQmvKN4dFLRp7oRUKX6kWZ8+xm1QL68qZKJKrezrnK+T+Tb/mjuuqlPpmt
/f97mfVl7vBZKGfXkJWkE4SphMHozs51k2MavDzq1WQfLSoSOcbDWjLtR5EWDrw4wVDej8oqkDQc
7kGUnF4ZLvhFSZl0kbAEb+MEWrGrKqv+x9CWttrhSmQGbmBNvUJO/3jaJMobtNeWOWyu8Q6qp31I
iyBMz2TWuJdGsE7RKlY6oJO9r4Ak4Ap+58rVyuiFVdw2KuGUaJPHZnJED4AhMmwlxyOAgwrr
-----END CERTIFICATE-----
TUBITAK Kamu SM SSL Kok Sertifikasi - Surum 1
=============================================
-----BEGIN CERTIFICATE-----
@ -3671,3 +3511,129 @@ hcErulWuBurQB7Lcq9CClnXO0lD+mefPL5/ndtFhKvshuzHQqp9HpLIiyhY6UFfEW0NnxWViA0kB
60PZ2Pierc+xYw5F9KBaLJstxabArahH9CdMOA0uG0k7UvToiIMrVCjU8jVStDKDYmlkDJGcn5fq
dBb9HxEGmpv0
-----END CERTIFICATE-----
Entrust Root Certification Authority - G4
=========================================
-----BEGIN CERTIFICATE-----
MIIGSzCCBDOgAwIBAgIRANm1Q3+vqTkPAAAAAFVlrVgwDQYJKoZIhvcNAQELBQAwgb4xCzAJBgNV
BAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMSgwJgYDVQQLEx9TZWUgd3d3LmVudHJ1c3Qu
bmV0L2xlZ2FsLXRlcm1zMTkwNwYDVQQLEzAoYykgMjAxNSBFbnRydXN0LCBJbmMuIC0gZm9yIGF1
dGhvcml6ZWQgdXNlIG9ubHkxMjAwBgNVBAMTKUVudHJ1c3QgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1
dGhvcml0eSAtIEc0MB4XDTE1MDUyNzExMTExNloXDTM3MTIyNzExNDExNlowgb4xCzAJBgNVBAYT
AlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMSgwJgYDVQQLEx9TZWUgd3d3LmVudHJ1c3QubmV0
L2xlZ2FsLXRlcm1zMTkwNwYDVQQLEzAoYykgMjAxNSBFbnRydXN0LCBJbmMuIC0gZm9yIGF1dGhv
cml6ZWQgdXNlIG9ubHkxMjAwBgNVBAMTKUVudHJ1c3QgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhv
cml0eSAtIEc0MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAsewsQu7i0TD/pZJH4i3D
umSXbcr3DbVZwbPLqGgZ2K+EbTBwXX7zLtJTmeH+H17ZSK9dE43b/2MzTdMAArzE+NEGCJR5WIoV
3imz/f3ET+iq4qA7ec2/a0My3dl0ELn39GjUu9CH1apLiipvKgS1sqbHoHrmSKvS0VnM1n4j5pds
8ELl3FFLFUHtSUrJ3hCX1nbB76W1NhSXNdh4IjVS70O92yfbYVaCNNzLiGAMC1rlLAHGVK/XqsEQ
e9IFWrhAnoanw5CGAlZSCXqc0ieCU0plUmr1POeo8pyvi73TDtTUXm6Hnmo9RR3RXRv06QqsYJn7
ibT/mCzPfB3pAqoEmh643IhuJbNsZvc8kPNXwbMv9W3y+8qh+CmdRouzavbmZwe+LGcKKh9asj5X
xNMhIWNlUpEbsZmOeX7m640A2Vqq6nPopIICR5b+W45UYaPrL0swsIsjdXJ8ITzI9vF01Bx7owVV
7rtNOzK+mndmnqxpkCIHH2E6lr7lmk/MBTwoWdPBDFSoWWG9yHJM6Nyfh3+9nEg2XpWjDrk4JFX8
dWbrAuMINClKxuMrLzOg2qOGpRKX/YAr2hRC45K9PvJdXmd0LhyIRyk0X+IyqJwlN4y6mACXi0mW
Hv0liqzc2thddG5msP9E36EYxr5ILzeUePiVSj9/E15dWf10hkNjc0kCAwEAAaNCMEAwDwYDVR0T
AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJ84xFYjwznooHFs6FRM5Og6sb9n
MA0GCSqGSIb3DQEBCwUAA4ICAQAS5UKme4sPDORGpbZgQIeMJX6tuGguW8ZAdjwD+MlZ9POrYs4Q
jbRaZIxowLByQzTSGwv2LFPSypBLhmb8qoMi9IsabyZIrHZ3CL/FmFz0Jomee8O5ZDIBf9PD3Vht
7LGrhFV0d4QEJ1JrhkzO3bll/9bGXp+aEJlLdWr+aumXIOTkdnrG0CSqkM0gkLpHZPt/B7NTeLUK
YvJzQ85BK4FqLoUWlFPUa19yIqtRLULVAJyZv967lDtX/Zr1hstWO1uIAeV8KEsD+UmDfLJ/fOPt
jqF/YFOOVZ1QNBIPt5d7bIdKROf1beyAN/BYGW5KaHbwH5Lk6rWS02FREAutp9lfx1/cH6NcjKF+
m7ee01ZvZl4HliDtC3T7Zk6LERXpgUl+b7DUUH8i119lAg2m9IUe2K4GS0qn0jFmwvjO5QimpAKW
RGhXxNUzzxkvFMSUHHuk2fCfDrGA4tGeEWSpiBE6doLlYsKA2KSD7ZPvfC+QsDJMlhVoSFLUmQjA
JOgc47OlIQ6SwJAfzyBfyjs4x7dtOvPmRLgOMWuIjnDrnBdSqEGULoe256YSxXXfW8AKbnuk5F6G
+TaU33fD6Q3AOfF5u0aOq0NZJ7cguyPpVkAh7DE9ZapD8j3fcEThuk0mEDuYn/PIjhs4ViFqUZPT
kcpG2om3PVODLAgfi49T3f+sHw==
-----END CERTIFICATE-----
Microsoft ECC Root Certificate Authority 2017
=============================================
-----BEGIN CERTIFICATE-----
MIICWTCCAd+gAwIBAgIQZvI9r4fei7FK6gxXMQHC7DAKBggqhkjOPQQDAzBlMQswCQYDVQQGEwJV
UzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTYwNAYDVQQDEy1NaWNyb3NvZnQgRUND
IFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTcwHhcNMTkxMjE4MjMwNjQ1WhcNNDIwNzE4
MjMxNjA0WjBlMQswCQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTYw
NAYDVQQDEy1NaWNyb3NvZnQgRUNDIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTcwdjAQ
BgcqhkjOPQIBBgUrgQQAIgNiAATUvD0CQnVBEyPNgASGAlEvaqiBYgtlzPbKnR5vSmZRogPZnZH6
thaxjG7efM3beaYvzrvOcS/lpaso7GMEZpn4+vKTEAXhgShC48Zo9OYbhGBKia/teQ87zvH2RPUB
eMCjVDBSMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTIy5lycFIM
+Oa+sgRXKSrPQhDtNTAQBgkrBgEEAYI3FQEEAwIBADAKBggqhkjOPQQDAwNoADBlAjBY8k3qDPlf
Xu5gKcs68tvWMoQZP3zVL8KxzJOuULsJMsbG7X7JNpQS5GiFBqIb0C8CMQCZ6Ra0DvpWSNSkMBaR
eNtUjGUBiudQZsIxtzm6uBoiB078a1QWIP8rtedMDE2mT3M=
-----END CERTIFICATE-----
Microsoft RSA Root Certificate Authority 2017
=============================================
-----BEGIN CERTIFICATE-----
MIIFqDCCA5CgAwIBAgIQHtOXCV/YtLNHcB6qvn9FszANBgkqhkiG9w0BAQwFADBlMQswCQYDVQQG
EwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTYwNAYDVQQDEy1NaWNyb3NvZnQg
UlNBIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTcwHhcNMTkxMjE4MjI1MTIyWhcNNDIw
NzE4MjMwMDIzWjBlMQswCQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9u
MTYwNAYDVQQDEy1NaWNyb3NvZnQgUlNBIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTcw
ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDKW76UM4wplZEWCpW9R2LBifOZNt9GkMml
7Xhqb0eRaPgnZ1AzHaGm++DlQ6OEAlcBXZxIQIJTELy/xztokLaCLeX0ZdDMbRnMlfl7rEqUrQ7e
S0MdhweSE5CAg2Q1OQT85elss7YfUJQ4ZVBcF0a5toW1HLUX6NZFndiyJrDKxHBKrmCk3bPZ7Pw7
1VdyvD/IybLeS2v4I2wDwAW9lcfNcztmgGTjGqwu+UcF8ga2m3P1eDNbx6H7JyqhtJqRjJHTOoI+
dkC0zVJhUXAoP8XFWvLJjEm7FFtNyP9nTUwSlq31/niol4fX/V4ggNyhSyL71Imtus5Hl0dVe49F
yGcohJUcaDDv70ngNXtk55iwlNpNhTs+VcQor1fznhPbRiefHqJeRIOkpcrVE7NLP8TjwuaGYaRS
MLl6IE9vDzhTyzMMEyuP1pq9KsgtsRx9S1HKR9FIJ3Jdh+vVReZIZZ2vUpC6W6IYZVcSn2i51BVr
lMRpIpj0M+Dt+VGOQVDJNE92kKz8OMHY4Xu54+OU4UZpyw4KUGsTuqwPN1q3ErWQgR5WrlcihtnJ
0tHXUeOrO8ZV/R4O03QK0dqq6mm4lyiPSMQH+FJDOvTKVTUssKZqwJz58oHhEmrARdlns87/I6KJ
ClTUFLkqqNfs+avNJVgyeY+QW5g5xAgGwax/Dj0ApQIDAQABo1QwUjAOBgNVHQ8BAf8EBAMCAYYw
DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUCctZf4aycI8awznjwNnpv7tNsiMwEAYJKwYBBAGC
NxUBBAMCAQAwDQYJKoZIhvcNAQEMBQADggIBAKyvPl3CEZaJjqPnktaXFbgToqZCLgLNFgVZJ8og
6Lq46BrsTaiXVq5lQ7GPAJtSzVXNUzltYkyLDVt8LkS/gxCP81OCgMNPOsduET/m4xaRhPtthH80
dK2Jp86519efhGSSvpWhrQlTM93uCupKUY5vVau6tZRGrox/2KJQJWVggEbbMwSubLWYdFQl3JPk
+ONVFT24bcMKpBLBaYVu32TxU5nhSnUgnZUP5NbcA/FZGOhHibJXWpS2qdgXKxdJ5XbLwVaZOjex
/2kskZGT4d9Mozd2TaGf+G0eHdP67Pv0RR0Tbc/3WeUiJ3IrhvNXuzDtJE3cfVa7o7P4NHmJweDy
AmH3pvwPuxwXC65B2Xy9J6P9LjrRk5Sxcx0ki69bIImtt2dmefU6xqaWM/5TkshGsRGRxpl/j8nW
ZjEgQRCHLQzWwa80mMpkg/sTV9HB8Dx6jKXB/ZUhoHHBk2dxEuqPiAppGWSZI1b7rCoucL5mxAyE
7+WL85MB+GqQk2dLsmijtWKP6T+MejteD+eMuMZ87zf9dOLITzNy4ZQ5bb0Sr74MTnB8G2+NszKT
c0QWbej09+CVgI+WXTik9KveCjCHk9hNAHFiRSdLOkKEW39lt2c0Ui2cFmuqqNh7o0JMcccMyj6D
5KbvtwEwXlGjefVwaaZBRA+GsCyRxj3qrg+E
-----END CERTIFICATE-----
e-Szigno Root CA 2017
=====================
-----BEGIN CERTIFICATE-----
MIICQDCCAeWgAwIBAgIMAVRI7yH9l1kN9QQKMAoGCCqGSM49BAMCMHExCzAJBgNVBAYTAkhVMREw
DwYDVQQHDAhCdWRhcGVzdDEWMBQGA1UECgwNTWljcm9zZWMgTHRkLjEXMBUGA1UEYQwOVkFUSFUt
MjM1ODQ0OTcxHjAcBgNVBAMMFWUtU3ppZ25vIFJvb3QgQ0EgMjAxNzAeFw0xNzA4MjIxMjA3MDZa
Fw00MjA4MjIxMjA3MDZaMHExCzAJBgNVBAYTAkhVMREwDwYDVQQHDAhCdWRhcGVzdDEWMBQGA1UE
CgwNTWljcm9zZWMgTHRkLjEXMBUGA1UEYQwOVkFUSFUtMjM1ODQ0OTcxHjAcBgNVBAMMFWUtU3pp
Z25vIFJvb3QgQ0EgMjAxNzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABJbcPYrYsHtvxie+RJCx
s1YVe45DJH0ahFnuY2iyxl6H0BVIHqiQrb1TotreOpCmYF9oMrWGQd+HWyx7xf58etqjYzBhMA8G
A1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBSHERUI0arBeAyxr87GyZDv
vzAEwDAfBgNVHSMEGDAWgBSHERUI0arBeAyxr87GyZDvvzAEwDAKBggqhkjOPQQDAgNJADBGAiEA
tVfd14pVCzbhhkT61NlojbjcI4qKDdQvfepz7L9NbKgCIQDLpbQS+ue16M9+k/zzNY9vTlp8tLxO
svxyqltZ+efcMQ==
-----END CERTIFICATE-----
certSIGN Root CA G2
===================
-----BEGIN CERTIFICATE-----
MIIFRzCCAy+gAwIBAgIJEQA0tk7GNi02MA0GCSqGSIb3DQEBCwUAMEExCzAJBgNVBAYTAlJPMRQw
EgYDVQQKEwtDRVJUU0lHTiBTQTEcMBoGA1UECxMTY2VydFNJR04gUk9PVCBDQSBHMjAeFw0xNzAy
MDYwOTI3MzVaFw00MjAyMDYwOTI3MzVaMEExCzAJBgNVBAYTAlJPMRQwEgYDVQQKEwtDRVJUU0lH
TiBTQTEcMBoGA1UECxMTY2VydFNJR04gUk9PVCBDQSBHMjCCAiIwDQYJKoZIhvcNAQEBBQADggIP
ADCCAgoCggIBAMDFdRmRfUR0dIf+DjuW3NgBFszuY5HnC2/OOwppGnzC46+CjobXXo9X69MhWf05
N0IwvlDqtg+piNguLWkh59E3GE59kdUWX2tbAMI5Qw02hVK5U2UPHULlj88F0+7cDBrZuIt4Imfk
abBoxTzkbFpG583H+u/E7Eu9aqSs/cwoUe+StCmrqzWaTOTECMYmzPhpn+Sc8CnTXPnGFiWeI8Mg
wT0PPzhAsP6CRDiqWhqKa2NYOLQV07YRaXseVO6MGiKscpc/I1mbySKEwQdPzH/iV8oScLumZfNp
dWO9lfsbl83kqK/20U6o2YpxJM02PbyWxPFsqa7lzw1uKA2wDrXKUXt4FMMgL3/7FFXhEZn91Qqh
ngLjYl/rNUssuHLoPj1PrCy7Lobio3aP5ZMqz6WryFyNSwb/EkaseMsUBzXgqd+L6a8VTxaJW732
jcZZroiFDsGJ6x9nxUWO/203Nit4ZoORUSs9/1F3dmKh7Gc+PoGD4FapUB8fepmrY7+EF3fxDTvf
95xhszWYijqy7DwaNz9+j5LP2RIUZNoQAhVB/0/E6xyjyfqZ90bp4RjZsbgyLcsUDFDYg2WD7rlc
z8sFWkz6GZdr1l0T08JcVLwyc6B49fFtHsufpaafItzRUZ6CeWRgKRM+o/1Pcmqr4tTluCRVLERL
iohEnMqE0yo7AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1Ud
DgQWBBSCIS1mxteg4BXrzkwJd8RgnlRuAzANBgkqhkiG9w0BAQsFAAOCAgEAYN4auOfyYILVAzOB
ywaK8SJJ6ejqkX/GM15oGQOGO0MBzwdw5AgeZYWR5hEit/UCI46uuR59H35s5r0l1ZUa8gWmr4UC
b6741jH/JclKyMeKqdmfS0mbEVeZkkMR3rYzpMzXjWR91M08KCy0mpbqTfXERMQlqiCA2ClV9+BB
/AYm/7k29UMUA2Z44RGx2iBfRgB4ACGlHgAoYXhvqAEBj500mv/0OJD7uNGzcgbJceaBxXntC6Z5
8hMLnPddDnskk7RI24Zf3lCGeOdA5jGokHZwYa+cNywRtYK3qq4kNFtyDGkNzVmf9nGvnAvRCjj5
BiKDUyUM/FHE5r7iOZULJK2v0ZXkltd0ZGtxTgI8qoXzIKNDOXZbbFD+mpwUHmUUihW9o4JFWklW
atKcsWMy5WHgUyIOpwpJ6st+H6jiYoD2EEVSmAYY3qXNL3+q1Ok+CHLsIwMCPKaq2LxndD0UF/tU
Sxfj03k9bWtJySgOLnRQvwzZRjoQhsmnP+mg7H/rpXdYaXHmgwo38oZJar55CJD2AhZkPuXaTH4M
NMn5X7azKFGnpyuqSfqNZSlO42sTp5SjLVFteAxEy9/eCG/Oo2Sr05WE1LlSVHJ7liXMvGnjSG4N
0MedJ5qq+BOS3R7fY581qRY27Iy4g/Q9iY/NtBde17MXQRBdJ3NghVdJIgc=
-----END CERTIFICATE-----

View File

@ -72,7 +72,6 @@ class WP_oEmbed {
'#https?://(www\.)?twitter\.com/i/moments/.*#i' => array( 'https://publish.twitter.com/oembed', true ),
'#https?://(www\.)?soundcloud\.com/.*#i' => array( 'https://soundcloud.com/oembed', true ),
'#https?://(.+?\.)?slideshare\.net/.*#i' => array( 'https://www.slideshare.net/api/oembed/2', true ),
'#https?://(www\.)?instagr(\.am|am\.com)/(p|tv)/.*#i' => array( 'https://api.instagram.com/oembed', true ),
'#https?://(open|play)\.spotify\.com/.*#i' => array( 'https://embed.spotify.com/oembed/', true ),
'#https?://(.+\.)?imgur\.com/.*#i' => array( 'https://api.imgur.com/oembed', true ),
'#https?://(www\.)?meetu(\.ps|p\.com)/.*#i' => array( 'https://api.meetup.com/oembed', true ),
@ -88,16 +87,6 @@ class WP_oEmbed {
'#https?://videopress\.com/v/.*#' => array( 'https://public-api.wordpress.com/oembed/?for=' . $host, true ),
'#https?://(www\.)?reddit\.com/r/[^/]+/comments/.*#i' => array( 'https://www.reddit.com/oembed', true ),
'#https?://(www\.)?speakerdeck\.com/.*#i' => array( 'https://speakerdeck.com/oembed.{format}', true ),
'#https?://www\.facebook\.com/.*/posts/.*#i' => array( 'https://www.facebook.com/plugins/post/oembed.json/', true ),
'#https?://www\.facebook\.com/.*/activity/.*#i' => array( 'https://www.facebook.com/plugins/post/oembed.json/', true ),
'#https?://www\.facebook\.com/.*/photos/.*#i' => array( 'https://www.facebook.com/plugins/post/oembed.json/', true ),
'#https?://www\.facebook\.com/photo(s/|\.php).*#i' => array( 'https://www.facebook.com/plugins/post/oembed.json/', true ),
'#https?://www\.facebook\.com/permalink\.php.*#i' => array( 'https://www.facebook.com/plugins/post/oembed.json/', true ),
'#https?://www\.facebook\.com/media/.*#i' => array( 'https://www.facebook.com/plugins/post/oembed.json/', true ),
'#https?://www\.facebook\.com/questions/.*#i' => array( 'https://www.facebook.com/plugins/post/oembed.json/', true ),
'#https?://www\.facebook\.com/notes/.*#i' => array( 'https://www.facebook.com/plugins/post/oembed.json/', true ),
'#https?://www\.facebook\.com/.*/videos/.*#i' => array( 'https://www.facebook.com/plugins/video/oembed.json/', true ),
'#https?://www\.facebook\.com/video\.php.*#i' => array( 'https://www.facebook.com/plugins/video/oembed.json/', true ),
'#https?://(www\.)?screencast\.com/.*#i' => array( 'https://api.screencast.com/external/oembed', true ),
'#https?://([a-z0-9-]+\.)?amazon\.(com|com\.mx|com\.br|ca)/.*#i' => array( 'https://read.amazon.com/kp/api/oembed', true ),
'#https?://([a-z0-9-]+\.)?amazon\.(co\.uk|de|fr|it|es|in|nl|ru)/.*#i' => array( 'https://read.amazon.co.uk/kp/api/oembed', true ),
@ -150,8 +139,6 @@ class WP_oEmbed {
* | SmugMug | smugmug.com | 3.0.0 |
* | YouTube | youtu.be | 3.0.0 |
* | Twitter | twitter.com | 3.4.0 |
* | Instagram | instagram.com | 3.5.0 |
* | Instagram | instagr.am | 3.5.0 |
* | Slideshare | slideshare.net | 3.5.0 |
* | SoundCloud | soundcloud.com | 3.5.0 |
* | Dailymotion | dai.ly | 3.6.0 |
@ -177,7 +164,6 @@ class WP_oEmbed {
* | Speaker Deck | speakerdeck.com | 4.4.0 |
* | Twitter | twitter.com/timelines | 4.5.0 |
* | Twitter | twitter.com/moments | 4.5.0 |
* | Facebook | facebook.com | 4.7.0 |
* | Twitter | twitter.com/user | 4.7.0 |
* | Twitter | twitter.com/likes | 4.7.0 |
* | Twitter | twitter.com/lists | 4.7.0 |
@ -192,8 +178,6 @@ class WP_oEmbed {
* | Someecards | someecards.com | 4.9.0 |
* | Someecards | some.ly | 4.9.0 |
* | Crowdsignal | survey.fm | 5.1.0 |
* | Instagram TV | instagram.com | 5.1.0 |
* | Instagram TV | instagr.am | 5.1.0 |
* | TikTok | tiktok.com | 5.4.0 |
*
* No longer supported providers:
@ -211,6 +195,11 @@ class WP_oEmbed {
* | Funny or Die | funnyordie.com | 3.0.0 | 5.1.0 |
* | CollegeHumor | collegehumor.com | 4.0.0 | 5.3.1 |
* | Hulu | hulu.com | 2.9.0 | 5.5.0 |
* | Instagram | instagram.com | 3.5.0 | 5.5.2 |
* | Instagram | instagr.am | 3.5.0 | 5.5.2 |
* | Instagram TV | instagram.com | 5.1.0 | 5.5.2 |
* | Instagram TV | instagr.am | 5.1.0 | 5.5.2 |
* | Facebook | facebook.com | 4.7.0 | 5.5.2 |
*
* @see wp_oembed_add_provider()
*

View File

@ -3875,6 +3875,21 @@ class wp_xmlrpc_server extends IXR_Server {
return new IXR_Error( 403, __( 'Sorry, comments are closed for this item.' ) );
}
if (
'publish' === get_post_status( $post_id ) &&
! current_user_can( 'edit_post', $post_id ) &&
post_password_required( $post_id )
) {
return new IXR_Error( 403, __( 'Sorry, you are not allowed to comment on this post.' ) );
}
if (
'private' === get_post_status( $post_id ) &&
! current_user_can( 'read_post', $post_id )
) {
return new IXR_Error( 403, __( 'Sorry, you are not allowed to comment on this post.' ) );
}
if ( empty( $content_struct['content'] ) ) {
return new IXR_Error( 403, __( 'Comment is required.' ) );
}
@ -3912,7 +3927,7 @@ class wp_xmlrpc_server extends IXR_Server {
$comment['user_ID'] = 0;
if ( get_option( 'require_name_email' ) ) {
if ( strlen( $comment['comment_author_email'] < 6 ) || '' === $comment['comment_author'] ) {
if ( strlen( $comment['comment_author_email'] ) < 6 || '' === $comment['comment_author'] ) {
return new IXR_Error( 403, __( 'Comment author name and email are required.' ) );
} elseif ( ! is_email( $comment['comment_author_email'] ) ) {
return new IXR_Error( 403, __( 'A valid email address is required.' ) );
@ -4292,7 +4307,7 @@ class wp_xmlrpc_server extends IXR_Server {
do_action( 'xmlrpc_call', 'wp.getMediaItem' );
$attachment = get_post( $attachment_id );
if ( ! $attachment ) {
if ( ! $attachment || 'attachment' !== $attachment->post_type ) {
return new IXR_Error( 404, __( 'Invalid attachment ID.' ) );
}

View File

@ -311,6 +311,11 @@ class WP_Scripts extends WP_Dependencies {
$inline_script_tag = '';
}
$translations = $this->print_translations( $handle, false );
if ( $translations ) {
$translations = sprintf( "<script%s id='%s-js-translations'>\n%s\n</script>\n", $this->type_attr, esc_attr( $handle ), $translations );
}
if ( $this->do_concat ) {
/**
* Filters the script loader source.
@ -322,7 +327,7 @@ class WP_Scripts extends WP_Dependencies {
*/
$srce = apply_filters( 'script_loader_src', $src, $handle );
if ( $this->in_default_dir( $srce ) && ( $before_handle || $after_handle ) ) {
if ( $this->in_default_dir( $srce ) && ( $before_handle || $after_handle || $translations ) ) {
$this->do_concat = false;
// Have to print the so-far concatenated scripts right away to maintain the right order.
@ -364,11 +369,6 @@ class WP_Scripts extends WP_Dependencies {
return true;
}
$translations = $this->print_translations( $handle, false );
if ( $translations ) {
$translations = sprintf( "<script%s id='%s-js-translations'>\n%s\n</script>\n", $this->type_attr, esc_attr( $handle ), $translations );
}
if ( ! preg_match( '|^(https?:)?//|', $src ) && ! ( $this->content_url && 0 === strpos( $src, $this->content_url ) ) ) {
$src = $this->base_url . $src;
}

View File

@ -552,11 +552,9 @@ function get_comment_class( $class = '', $comment_id = null, $post_id = null ) {
function get_comment_date( $format = '', $comment_ID = 0 ) {
$comment = get_comment( $comment_ID );
if ( '' === $format ) {
$date = mysql2date( get_option( 'date_format' ), $comment->comment_date );
} else {
$date = mysql2date( $format, $comment->comment_date );
}
$_format = ! empty( $format ) ? $format : get_option( 'date_format' );
$date = mysql2date( $_format, $comment->comment_date );
/**
* Filters the returned comment date.
@ -1046,11 +1044,9 @@ function get_comment_time( $format = '', $gmt = false, $translate = true ) {
$comment_date = $gmt ? $comment->comment_date_gmt : $comment->comment_date;
if ( '' === $format ) {
$date = mysql2date( get_option( 'time_format' ), $comment_date, $translate );
} else {
$date = mysql2date( $format, $comment_date, $translate );
}
$_format = ! empty( $format ) ? $format : get_option( 'time_format' );
$date = mysql2date( $_format, $comment_date, $translate );
/**
* Filters the returned comment time.
@ -2484,7 +2480,7 @@ function comment_form( $args = array(), $post_id = null ) {
*/
$args = wp_parse_args( $args, apply_filters( 'comment_form_defaults', $defaults ) );
// Ensure that the filtered args contain all required default values.
// Ensure that the filtered arguments contain all required default values.
$args = array_merge( $defaults, $args );
// Remove `aria-describedby` from the email field if there's no associated description.

View File

@ -3839,11 +3839,11 @@ function _wp_batch_update_comment_type() {
*/
$comment_batch_size = (int) apply_filters( 'wp_update_comment_type_batch_size', 100 );
// Update the `comment_type` field value to be `comment` for the next batch of comments.
$wpdb->query(
// Get the IDs of the comments to update.
$comment_ids = $wpdb->get_col(
$wpdb->prepare(
"UPDATE {$wpdb->comments}
SET comment_type = 'comment'
"SELECT comment_ID
FROM {$wpdb->comments}
WHERE comment_type = ''
ORDER BY comment_ID DESC
LIMIT %d",
@ -3851,6 +3851,21 @@ function _wp_batch_update_comment_type() {
)
);
if ( $comment_ids ) {
$comment_id_list = implode( ',', $comment_ids );
// Update the `comment_type` field value to be `comment` for the next batch of comments.
$wpdb->query(
"UPDATE {$wpdb->comments}
SET comment_type = 'comment'
WHERE comment_type = ''
AND comment_ID IN ({$comment_id_list})" // phpcs:ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared
);
// Make sure to clean the comment cache.
clean_comment_cache( $comment_ids );
}
delete_option( $lock_name );
}

View File

@ -610,6 +610,11 @@ function get_oembed_response_data_for_url( $url, $args ) {
$sites = get_sites( $qv );
$site = reset( $sites );
// Do not allow embeds for deleted/archived/spam sites.
if ( ! empty( $site->deleted ) || ! empty( $site->spam ) || ! empty( $site->archived ) ) {
return false;
}
if ( $site && get_current_blog_id() !== (int) $site->blog_id ) {
switch_to_blog( $site->blog_id );
$switched_blog = true;

View File

@ -3808,7 +3808,7 @@ function human_time_diff( $from, $to = 0 ) {
function wp_trim_excerpt( $text = '', $post = null ) {
$raw_excerpt = $text;
if ( '' === $text ) {
if ( '' === trim( $text ) ) {
$post = get_post( $post );
$text = get_the_content( '', false, $post );

View File

@ -1753,7 +1753,11 @@ function is_blog_installed() {
continue;
}
if ( ! $wpdb->get_results( "DESCRIBE $table;" ) ) {
$described_table = $wpdb->get_results( "DESCRIBE $table;" );
if (
( ! $described_table && empty( $wpdb->last_error ) ) ||
( is_array( $described_table ) && 0 === count( $described_table ) )
) {
continue;
}

Some files were not shown because too many files have changed in this diff Show More