Make WordPress Core


Ignore:
Timestamp:
09/12/2025 10:03:25 PM (11 months ago)
Author:
SergeyBiryukov
Message:

Formatting: Allow specifying https:// as the default protocol in esc_url().

esc_url() will now prepend https:// to the URL if it does not already contain a scheme and the first item in the $protocols array is 'https'.

Follow-up to [5088], [6015], [13299], [33851], [60672].

Props sabernhardt, mkaz, rachelbaker, audrasjb, costdev, aksl95, johnbillion, pcarvalho, SergeyBiryukov.
Fixes #52886.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/tests/formatting/escUrl.php

    r60251 r60734  
    9191
    9292        /**
     93         * @ticket 23605
     94         * @ticket 52886
     95         *
    9396         * @covers ::wp_allowed_protocols
    9497         */
     
    97100                $this->assertSame( '', esc_url( 'nasty://example.com/' ) );
    98101                $this->assertSame(
    99                         '',
     102                        'https://example.com',
    100103                        esc_url(
    101104                                'example.com',
    102105                                array(
     106                                        'https',
     107                                )
     108                        )
     109                );
     110                $this->assertSame(
     111                        'http://example.com',
     112                        esc_url(
     113                                'example.com',
     114                                array(
     115                                        'http',
     116                                )
     117                        )
     118                );
     119                $this->assertSame(
     120                        'https://example.com',
     121                        esc_url(
     122                                'example.com',
     123                                array(
     124                                        'https',
     125                                        'http',
     126                                )
     127                        )
     128                );
     129                $this->assertSame(
     130                        'http://example.com',
     131                        esc_url(
     132                                'example.com',
     133                                array(
     134                                        'http',
    103135                                        'https',
    104136                                )
Note: See TracChangeset for help on using the changeset viewer.