wp_customize_support_script()
Prints a script to check whether or not the Customizer is supported, and apply either the no-customize-support or customize-support class to the body.
Description Description
This function MUST be called inside the body tag.
Ideally, call this function immediately after the body tag is opened. This prevents a flash of unstyled content.
It is also recommended that you add the "no-customize-support" class to the body tag by default.
Source Source
File: wp-includes/theme.php
function wp_customize_support_script() { $admin_origin = parse_url( admin_url() ); $home_origin = parse_url( home_url() ); $cross_domain = ( strtolower( $admin_origin['host'] ) != strtolower( $home_origin['host'] ) ); $type_attr = current_theme_supports( 'html5', 'script' ) ? '' : ' type="text/javascript"'; ?> <!--[if lte IE 8]> <script<?php echo $type_attr; ?>> document.body.className = document.body.className.replace( /(^|\s)(no-)?customize-support(?=\s|$)/, '' ) + ' no-customize-support'; </script> <![endif]--> <!--[if gte IE 9]><!--> <script<?php echo $type_attr; ?>> (function() { var request, b = document.body, c = 'className', cs = 'customize-support', rcs = new RegExp('(^|\\s+)(no-)?'+cs+'(\\s+|$)'); <?php if ( $cross_domain ) : ?> request = (function(){ var xhr = new XMLHttpRequest(); return ('withCredentials' in xhr); })(); <?php else : ?> request = true; <?php endif; ?> b[c] = b[c].replace( rcs, ' ' ); // The customizer requires postMessage and CORS (if the site is cross domain) b[c] += ( window.postMessage && request ? ' ' : ' no-' ) + cs; }()); </script> <!--<![endif]--> <?php }
Expand full source code Collapse full source code View on Trac
Changelog Changelog
Version | Description |
---|---|
4.7.0 | Support for IE8 and below is explicitly removed via conditional comments. |
3.4.0 | Introduced. |