Make WordPress Core

Ticket #47357: 47357.2.diff

File 47357.2.diff, 1.6 KB (added by SergeyBiryukov, 3 years ago)
  • src/wp-includes/kses.php

     
    3636 * Using `CUSTOM_TAGS` is not recommended and should be considered deprecated. The
    3737 * {@see 'wp_kses_allowed_html'} filter is more powerful and supplies context.
    3838 *
     39 * When using this constant, make sure to set all of these globals to arrays:
     40 *
     41 *  - `$allowedposttags`
     42 *  - `$allowedtags`
     43 *  - `$allowedentitynames`
     44 *  - `$allowedxmlentitynames`
     45 *
    3946 * @see wp_kses_allowed_html()
    4047 * @since 1.2.0
    4148 *
     
    685692
    686693        $allowedposttags = array_map( '_wp_add_global_attributes', $allowedposttags );
    687694} else {
     695        $required_kses_globals = array(
     696                'allowedposttags',
     697                'allowedtags',
     698                'allowedentitynames',
     699                'allowedxmlentitynames',
     700        );
     701        $missing_kses_globals  = array();
     702
     703        foreach ( $required_kses_globals as $global_name ) {
     704                if ( ! isset( $GLOBALS[ $global_name ] ) || ! is_array( $GLOBALS[ $global_name ] ) ) {
     705                        $missing_kses_globals[] = '<code>$' . $global_name . '</code>';
     706                }
     707        }
     708
     709        if ( $missing_kses_globals ) {
     710                _doing_it_wrong(
     711                        'wp_kses_allowed_html',
     712                        sprintf(
     713                                /* translators: 1: CUSTOM_TAGS, 2: Global variable names. */
     714                                __( 'When using the %1$s constant, make sure to set these globals to an array: %2$s.' ),
     715                                '<code>CUSTOM_TAGS</code>',
     716                                implode( ', ', $missing_kses_globals )
     717                        ),
     718                        '6.2.0'
     719                );
     720        }
     721
    688722        $allowedtags     = wp_kses_array_lc( $allowedtags );
    689723        $allowedposttags = wp_kses_array_lc( $allowedposttags );
    690724}