WordPress.org

Make WordPress Core

Ticket #20507: 20507.6.diff

File 20507.6.diff, 1.2 KB (added by ryan, 6 years ago)

Just filters for now.

  • wp-includes/class-wp-customize.php

     
    7272                        return;
    7373
    7474                $url = parse_url( admin_url() );
    75                 $allowed_origins = array( 'http://' . $url[ 'host' ],  'https://' . $url[ 'host' ] );
     75                $allowed_origins = apply_filters( 'allowed_http_origins', array( 'http://' . $url[ 'host' ],  'https://' . $url[ 'host' ] ) );
    7676                // @todo preserve port?
    77                 if ( isset( $_SERVER[ 'HTTP_ORIGIN' ] ) && in_array( $_SERVER[ 'HTTP_ORIGIN' ], $allowed_origins ) ) {
    78                         $origin = $_SERVER[ 'HTTP_ORIGIN' ];
    79                 } else {
    80                         $origin = $url[ 'scheme' ] . '://' . $url[ 'host' ];
     77                $origin = isset( $_SERVER[ 'HTTP_ORIGIN' ] ) ? $_SERVER[ 'HTTP_ORIGIN' ] : '';
     78                $origin = apply_filters( 'http_origin', $origin );
     79                if ( $origin && in_array( $origin, $allowed_origins ) ) {
     80                        @header( 'Access-Control-Allow-Origin: ' .  $origin );
     81                        @header( 'Access-Control-Allow-Credentials: true' );
    8182                }
    8283
    83                 @header( 'Access-Control-Allow-Origin: ' .  $origin );
    84                 @header( 'Access-Control-Allow-Credentials: true' );
    85 
    8684                $this->start_previewing_theme();
    8785                show_admin_bar( false );
    8886        }