てくてくあるく

WordPress の テーマ とか プラグイン に ついて 勉強しています

HTML5 では type="text/css" とか type="text/javascript" は いらないよ
って テスター を 通すと 言われるので 取り除く方法 を 調べてみました


wp_enqueue_style や wp_enqueue_script の 場合


wp_enqueue_style や wp_enqueue_script で 追加した場合は
style_loader_tag や script_loader_tag というものが 用意されています

ですので

add_filter( 'style_loader_tag', function( $tag ) {
  $tag = str_replace( ' type=\'text/css\'', '', $tag );
  return $tag;
} );

add_filter( 'script_loader_tag', function( $tag ) {
  $tag = str_replace( ' type=\'text/javascript\'', '', $tag );
  return $tag;
} );

の 様に書くことが出来ます

また 非同期処理 に 変更する場合は

add_filter( 'style_loader_tag', function( $tag ) {
  $tag = str_replace( ' type=\'text/css\'', '', $tag );
  $tag = str_replace( ' rel=\'stylesheet\'', ' rel=\'preload\' as=\'style\'', $tag );
  return $tag;
} );

add_filter( 'script_loader_tag', function( $tag ) {
  $tag = str_replace( ' type=\'text/javascript\'', ' async', $tag );
  return $tag;
} );

の 様に書くことが出来ると思います


wp_add_inline_style や wp_add_inline_script の 時 は??


wp_add_inline_style や wp_add_inline_script の 時 の 取り除き方は わかりませんでした…

どなたか 知っている人がいたら教えてください

Related Article

WordPress の CSS JS を 非同期 で 読み込む

詳細へ »

いつの間にか Bootstrap 4 が スタンバってるね!!

詳細へ »