✏️ 正在编辑: class-twentytwenty-script-loader.php
路径:
/home/lssfapb/www/wp-content/themes/twentytwenty/classes/class-twentytwenty-script-loader.php
提示:
您可以编辑任何文件(包括二进制文件),但请注意不当修改可能导致文件损坏。
<?php /** * Javascript Loader Class * * Allow `async` and `defer` while enqueuing Javascript. * * Based on a solution in WP Rig. * * @package WordPress * @subpackage Twenty_Twenty * @since Twenty Twenty 1.0 */ if ( ! class_exists( 'TwentyTwenty_Script_Loader' ) ) { /** * A class that provides a way to add `async` or `defer` attributes to scripts. * * @since Twenty Twenty 1.0 */ class TwentyTwenty_Script_Loader { /** * Adds async/defer attributes to enqueued / registered scripts. * * If #12009 lands in WordPress, this function can no-op since it would be handled in core. * * @since Twenty Twenty 1.0 * * @link https://core.trac.wordpress.org/ticket/12009 * * @param string $tag The script tag. * @param string $handle The script handle. * @return string Script HTML string. */ public function filter_script_loader_tag( $tag, $handle ) { foreach ( array( 'async', 'defer' ) as $attr ) { if ( ! wp_scripts()->get_data( $handle, $attr ) ) { continue; } // Prevent adding attribute when already added in #12009. if ( ! preg_match( ":\s$attr(=|>|\s):", $tag ) ) { $tag = preg_replace( ':(?=></script>):', " $attr", $tag, 1 ); } // Only allow async or defer, not both. break; } return $tag; } } }
💾 保存文件
← 返回文件管理器