Make WordPress Core

Ticket #33887: 33887-alternative.diff

File 33887-alternative.diff, 1.0 KB (added by flixos90, 9 years ago)

alternative patch, solving the issue in set_url_scheme() only

  • src/wp-includes/link-template.php

     
    33703370function set_url_scheme( $url, $scheme = null ) {
    33713371        $orig_scheme = $scheme;
    33723372
     3373        // if we're switched on multisite and no specific scheme is requested, try to detect it from the URL
     3374        if ( is_multisite() && ! empty( $GLOBALS['_wp_switched_stack'] ) ) {
     3375                if ( ! $scheme
     3376                        || ( 'admin' === $scheme || 'login' === $scheme || 'login_post' === $scheme || 'rpc' === $scheme ) && ! force_ssl_admin()
     3377                        || 'http' !== $scheme && 'https' !== $scheme && 'relative' !== $scheme
     3378                ) {
     3379                        if ( 0 === strpos( $url, 'https://' ) ) {
     3380                                $scheme = 'https';
     3381                        } elseif ( 0 === strpos( $url, 'http://' ) ) {
     3382                                $scheme = 'http';
     3383                        }
     3384                }
     3385        }
     3386
    33733387        if ( ! $scheme ) {
    33743388                $scheme = is_ssl() ? 'https' : 'http';
    33753389        } elseif ( $scheme === 'admin' || $scheme === 'login' || $scheme === 'login_post' || $scheme === 'rpc' ) {