Make WordPress Core


Ignore:
Timestamp:
10/28/2025 09:35:53 PM (6 weeks ago)
Author:
SergeyBiryukov
Message:

Script Loader: Consistently escape the style handle in WP_Styles::do_item().

Includes moving most of the escaping as late as possible when the <link> tag is being constructed.

Follow-up to [29956], [36550], [43564], [46164].

Props georgestephanis, westonruter, azaozz, jonsurrell, XecurAbhijeet, SergeyBiryukov.
See #30036.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/class-wp-styles.php

    r60948 r61084  
    195195
    196196        if ( isset( $obj->args ) ) {
    197             $media = esc_attr( $obj->args );
     197            $media = $obj->args;
    198198        } else {
    199199            $media = 'all';
     
    219219
    220220        $rel   = isset( $obj->extra['alt'] ) && $obj->extra['alt'] ? 'alternate stylesheet' : 'stylesheet';
    221         $title = isset( $obj->extra['title'] ) ? sprintf( " title='%s'", esc_attr( $obj->extra['title'] ) ) : '';
     221        $title = isset( $obj->extra['title'] ) ? $obj->extra['title'] : '';
    222222
    223223        $tag = sprintf(
    224224            "<link rel='%s' id='%s-css'%s href='%s'%s media='%s' />\n",
    225225            $rel,
    226             $handle,
    227             $title,
     226            esc_attr( $handle ),
     227            $title ? sprintf( " title='%s'", esc_attr( $title ) ) : '',
    228228            $href,
    229229            $this->type_attr,
    230             $media
     230            esc_attr( $media )
    231231        );
    232232
     
    256256                "<link rel='%s' id='%s-rtl-css'%s href='%s'%s media='%s' />\n",
    257257                $rel,
    258                 $handle,
    259                 $title,
     258                esc_attr( $handle ),
     259                $title ? sprintf( " title='%s'", esc_attr( $title ) ) : '',
    260260                $rtl_href,
    261261                $this->type_attr,
    262                 $media
     262                esc_attr( $media )
    263263            );
    264264
Note: See TracChangeset for help on using the changeset viewer.