我正在WordPress网站上工作, 这些警告出现在每个页面上, 是否有任何方法可以解决此问题。
警告:JavaScript资源不需要type属性。 <script type =” text / javascript”>
#1
将以下代码添加到主题的functions.php中
add_action( 'template_redirect', '8798saf_remove_template_redirect', 10, 2);
function 8798saf_remove_template_redirect(){
ob_start( function( $buffer ){
$buffer = str_replace( array(
'<script type="text/javascript">', "<script type='text/javascript'>", "<script type='text/javascript' src=", '<script type="text/javascript" src=', '<style type="text/css">', "' type='text/css' media=", '<style type="text/css" media', "' type='text/css'>"
), array(
'<script>', "<script>", "<script src=", '<script src=', '<style>', "' media=", '<style media', "' >"
), $buffer );
return $buffer;
});
};
这会将<script type =” text / javascript”>更改为<script>, 并将<style type =” text / css”>更改为<style>。可以通过script_loader_tag完成, 但是给定的主题检查验证错误。
更新:对于WordPress 5.3, 你可以使用以下内容。
function theme_name_setup() {
add_theme_support( 'html5', array( 'script', 'style' ) );
}
add_action( 'after_setup_theme', 'theme_name_setup' );
#2
将以下代码添加到主题的functions.php中
add_filter('script_loader_tag', 'clean_script_tag');
function clean_script_tag($input) {
$input = str_replace("type='text/javascript' ", '', $input);
return str_replace("'", '"', $input);
}
对于插件加载的脚本, 这会将<script type =” text / javascript”>更改为<script>。
然后在主题页眉的页脚php文件中将<script type =” text / javascript”>更改为<script>。
#3
从WordPress 5.3开始, 你可以在Html5的add_theme_support中添加”样式”和”脚本”以删除类型属性。
function register_html_support() {
add_theme_support( 'html5', array( 'script', 'style' ) );
}
add_action( 'after_setup_theme', 'register_html_support' );
#4
我添加了两件事。这对我有用:
#one for JS mime-type
add_action( 'template_redirect', function(){
ob_start( function( $buffer ){
$buffer = str_replace( array( 'type="text/javascript"', "type='text/javascript'" ), '', $buffer );
return $buffer;
});
});
#one for CSS-Mime-Type
add_action( 'template_redirect', function(){
ob_start( function( $buffer ){
$buffer = str_replace( array( 'type="text/css"', "type='text/css'" ), '', $buffer );
return $buffer;
});
});
我知道你可以在一个函数中同时做这两个事情, 但是在这里你可以自己决定想要什么(JS或CSS或两者兼有)
评论前必须登录!
注册