WordPress: Гутенберг не загружается, когда в functions.php добавлен отложенный анализ JavaScript
Я пытаюсь включить функцию отложенного анализа JavaScript в свой файл functions.php. Когда я это делаю, сайт по-прежнему работает нормально, но в wp-admin все, что связано с Гутенбергом, не загружается, и я просто получаю белый экран смерти. Есть идеи, плохой ли этот код?
// Defer Parsing of Javascript
function defer_parsing_of_js ( $url ) {
if ( FALSE === strpos( $url, '.js' ) ) return $url;
if ( strpos( $url, 'jquery.js' ) ) return $url;
return str_replace( ' src', ' defer src', $url );
}
add_filter( 'script_loader_tag', 'defer_parsing_of_js', 10 );
1 ответ
Решение
На странице, где вы, вероятно, скачали этот код, есть комментарий, который решил эту проблему. Используйте вместо этого:
function defer_parsing_of_js( $url ) {
if ( is_user_logged_in() ) return $url; //don't break WP Admin
if ( FALSE === strpos( $url, '.js' ) ) return $url;
if ( strpos( $url, 'jquery.js' ) ) return $url;
return str_replace( ' src', ' defer src', $url );
}
add_filter( 'script_loader_tag', 'defer_parsing_of_js', 10 );
Источник: https://kinsta.com/blog/defer-parsing-of-javascript/ (ответ Дина)