Docs: Fix the documentation for the $tests parameter of the site_status_tests filter.

Tests are contained within `direct` and `async` properties of this array, not directly in the array itself. This also clarifies the properties that differ between direct and async tests.

See #53399, #46573


git-svn-id: https://develop.svn.wordpress.org/trunk@51297 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
John Blackbourn 2021-07-01 20:36:12 +00:00
parent 9ae3f12d7d
commit 4d431f89d5

View File

@ -2371,7 +2371,7 @@ class WP_Site_Health {
* Add or modify which site status tests are run on a site.
*
* The site health is determined by a set of tests based on best practices from
* both the WordPress Hosting Team, but also web standards in general.
* both the WordPress Hosting Team and web standards in general.
*
* Some sites may not have the same requirements, for example the automatic update
* checks may be handled by a host, and are therefore disabled in core.
@ -2381,26 +2381,41 @@ class WP_Site_Health {
* to complete should run asynchronously, to avoid extended loading periods within wp-admin.
*
* @since 5.2.0
* @since 5.6.0 Added the `async_direct_test` array key.
* Added the `skip_cron` array key.
* @since 5.6.0 Added the `async_direct_test` array key for asynchronous tests.
* Added the `skip_cron` array key for all tests.
*
* @param array $test_type {
* An associative array, where the `$test_type` is either `direct` or
* `async`, to declare if the test should run via Ajax calls after page load.
* @param array[] $tests {
* An associative array of direct and asynchronous tests.
*
* @type array $identifier {
* `$identifier` should be a unique identifier for the test that should run.
* Plugins and themes are encouraged to prefix test identifiers with their slug
* to avoid any collisions between tests.
* @type array[] $direct {
* An array of direct tests.
*
* @type string $label A friendly label for your test to identify it by.
* @type mixed $test A callable to perform a direct test, or a string AJAX action
* to be called to perform an async test.
* @type boolean $has_rest Optional. Denote if `$test` has a REST API endpoint.
* @type boolean $skip_cron Whether to skip this test when running as cron.
* @type callable $async_direct_test A manner of directly calling the test marked as asynchronous,
* as the scheduled event can not authenticate, and endpoints
* may require authentication.
* @type array ...$identifier {
* `$identifier` should be a unique identifier for the test. Plugins and themes are encouraged to
* prefix test identifiers with their slug to avoid collisions between tests.
*
* @type string $label The friendly label to identify the test.
* @type callable $test The callback function that runs the test and returns its result.
* @type bool $skip_cron Whether to skip this test when running as cron.
* }
* }
* @type array[] $async {
* An array of asynchronous tests.
*
* @type array ...$identifier {
* `$identifier` should be a unique identifier for the test. Plugins and themes are encouraged to
* prefix test identifiers with their slug to avoid collisions between tests.
*
* @type string $label The friendly label to identify the test.
* @type string $test An admin-ajax.php action to be called to perform the test, or
* if `$has_rest` is true, a URL to a REST API endpoint to perform
* the test.
* @type bool $has_rest Whether the `$test` property points to a REST API endpoint.
* @type bool $skip_cron Whether to skip this test when running as cron.
* @type callable $async_direct_test A manner of directly calling the test marked as asynchronous,
* as the scheduled event can not authenticate, and endpoints
* may require authentication.
* }
* }
* }
*/