WordPress.org

Make WordPress Core

Ticket #16024: conditional-comments-for-js.16024.diff

File conditional-comments-for-js.16024.diff, 1.2 KB (added by filosofo, 7 years ago)
  • wp-includes/class.wp-scripts.php

     
    8282                if ( !parent::do_item($handle) )
    8383                        return false;
    8484
     85                $start_cond = $end_cond = '';
     86
    8587                if ( 0 === $group && $this->groups[$handle] > 0 ) {
    8688                        $this->in_footer[] = $handle;
    8789                        return false;
     
    112114                                $this->ext_version .= "$handle$ver";
    113115                        }
    114116                }
     117               
     118                if ( isset($this->registered[$handle]->extra['conditional']) && $this->registered[$handle]->extra['conditional'] ) {
     119                        $start_cond = "<!--[if {$this->registered[$handle]->extra['conditional']}]>\n";
     120                        $end_cond = "<![endif]-->\n";
     121                }
    115122
    116123                $this->print_scripts_l10n( $handle );
    117124                if ( !preg_match('|^https?://|', $src) && ! ( $this->content_url && 0 === strpos($src, $this->content_url) ) ) {
     
    125132                if ( $this->do_concat )
    126133                        $this->print_html .= "<script type='text/javascript' src='$src'></script>\n";
    127134                else
    128                         echo "<script type='text/javascript' src='$src'></script>\n";
     135                        echo "{$start_cond}<script type='text/javascript' src='$src'></script>\n{$end_cond}";
    129136
    130137                return true;
    131138        }