vk fb g+

Как отложить загрузку кода JavaScript используя атрибут «async» в WordPress

Рано или поздно каждый владелец сайта (в данном случае мы рассматриваем сайты на CMS WordPress) добирается до сервиса PageSpeed Insights от Google и понимает что нужно что то делать чтоб сайт грузился быстрее. Ведь скорость загрузки сайта влияет на выдачу в Гугле. После анализа своего сайта PageSpeed Insights выдает следующее:

Исправьте обязательно:

Удалите код JavaScript, блокирующий отображение верхней части страницы

Количество блокирующих скриптов на странице: 2. Они замедляют отображение контента.

Все содержание верхней части страницы отображается только после загрузки указанных далее ресурсов. Попробуйте отложить загрузку этих ресурсов, загружать их асинхронно или встроить их самые важные компоненты непосредственно в код HTML.

Удалите код JavaScript, препятствующий отображению:

  • http://site.com/…-includes/js/jquery/jquery.js?ver=1.12.4
  • http://site.com/…s/jquery/jquery-migrate.min.js?ver=1.4.1
 

В подсказке, как исправить эту проблему, сам сервис рекомендует следующее:

Отложите загрузку кода JavaScript

Чтобы код JavaScript не блокировал загрузку страницы, используйте атрибут async. Например:

<script async src="my.js">
 

Убрать эту ошибку можно легко следующим образом:

1.Находим файл /wp-includes/class.wp-scripts.php

2.Находим строку:

$tag = "{$cond_before}{$before_handle}<script type='text/javascript' src='$src'></script>\n{$after_handle}{$cond_after}"; 
3.Добавляем атрибут async в эту строку:
$tag = "{$cond_before}{$before_handle}<script type='text/javascript' async src='$src'></script>\n{$after_handle}{$cond_after}";

После данной манипуляции сервис PageSpeed Insights больше не будет выдавать ошибку и добавит пару баллов вашему сайту.

Если вы знаете какие то другие способы устранения этой ошибки или других ошибок в PageSpeed Insights, поделитесь со всеми в комментариях.





top