Make WordPress Core

Changeset 46269


Ignore:
Timestamp:
09/23/2019 08:03:15 PM (5 years ago)
Author:
SergeyBiryukov
Message:

Site Health: Introduce site_status_test_result filter for the output of a finished Site Health test.

Props Clorith.
Fixes #47864.

Location:
trunk/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/js/_enqueues/admin/site-health.js

    r46199 r46269  
    180180                    data,
    181181                    function( response ) {
    182                         AppendIssue( response.data );
     182                        /** This filter is documented in wp-admin/includes/class-wp-site-health.php */
     183                        AppendIssue( wp.hooks.applyFilters( 'site_status_test_result', response.data ) );
    183184                        maybeRunNextAsyncTest();
    184185                    }
  • trunk/src/wp-admin/includes/class-wp-site-health.php

    r46268 r46269  
    9797
    9898                    if ( method_exists( $this, $test_function ) && is_callable( array( $this, $test_function ) ) ) {
    99                         $health_check_js_variables['site_status']['direct'][] = call_user_func( array( $this, $test_function ) );
     99                        /**
     100                         * Filter the output of a finished Site Health test.
     101                         *
     102                         * @since 5.3.0
     103                         *
     104                         * @param array $test_result {
     105                         *     An associated array of test result data.
     106                         *
     107                         *     @param string $label  A label describing the test, and is used as a header in the output.
     108                         *     @param string $status The status of the test, which can be a value of `good`, `recommended` or `critical`.
     109                         *     @param array  $badge {
     110                         *         Tests are put into categories which have an associated badge shown, these can be modified and assigned here.
     111                         *
     112                         *         @param string $label The test label, for example `Performance`.
     113                         *         @param string $color Default `blue`. A string representing a color to use for the label.
     114                         *     }
     115                         *     @param string $description A more descriptive explanation of what the test looks for, and why it is important for the end user.
     116                         *     @param string $actions     An action to direct the user to where they can resolve the issue, if one exists.
     117                         *     @param string $test        The name of the test being ran, used as a reference point.
     118                         * }
     119                         */
     120                        $health_check_js_variables['site_status']['direct'][] = apply_filters( 'site_status_test_result', call_user_func( array( $this, $test_function ) ) );
    100121                        continue;
    101122                    }
     
    103124
    104125                if ( is_callable( $test['test'] ) ) {
    105                     $health_check_js_variables['site_status']['direct'][] = call_user_func( $test['test'] );
     126                    /** This filter is documented in wp-admin/includes/class-wp-site-health.php */
     127                    $health_check_js_variables['site_status']['direct'][] = apply_filters( 'site_status_test_result', call_user_func( $test['test'] ) );
    106128                }
    107129            }
Note: See TracChangeset for help on using the changeset viewer.