Задать вопрос

Как сделать грамотный preload Css\JS для сайта под wp?

Всем привет, почитала - Предварительная загрузка контента при помощи rel="... и встал вопрос, как правильно делать preload для css и js для лучшей оптимизации - попробовала применить вот такой вот снипет - он почему-то в mozilla и chome он рушит таблицу стилей, в ie работает и страница визуально грузится лучше, в PSI добавляет от 10-20 баллов. Есть ли какие нибудь хаки по мимо этого php скрипта?
function add_rel_preload($html, $handle, $href, $media) {
if (is_admin())
    return $html;
	
$html = <<<EOT
<link rel='preload' as='style' onload="this.onload=null;this.rel='stylesheet'" 
id='$handle' href='$href' type='text/css' media='all' />
EOT;
	return $html;
}

add_filter( 'style_loader_tag', 'add_rel_preload', 10, 4 );

Для JS -
add_action('wp_head', function () {
        global $wp_scripts;
        foreach($wp_scripts->queue as $handle) {
            $script = $wp_scripts->registered[$handle];
            //-- Weird way to check if script is being enqueued in the footer.
            if($script->extra['group'] === 1) {
                //-- If version is set, append to end of source.
                $source = $script->src . ($script->ver ? "?ver={$script->ver}" : "");
                //-- Spit out the tag.
                echo "<link rel='preload' href='{$source}' as='script' onload='var script = document.createElement('script'); script.src = this.href; document.body.appendChild(script);'/>\n";
            }
        }
    }, 1);
  • Вопрос задан
  • 3666 просмотров
Подписаться 7 Простой Комментировать
Решения вопроса 1
Попробуйте абсолютно бесплатный плагин LiteSpeed Cache — он реально помогает с оптимизацией WP:
Со стилями и скриптами: минификация, объединение, генерация Critical CSS (бесплатно, в отличии от остальных) асинхронная загрузка
С изображениями: оптимизация, ленивая загрузка
Со шрифтами: асинхронная загрузка
А если ещё сайт перенести на хостинг с веб сервером LiteSpeed, то и кэшированием займется, на Apache вроде не работает кэширование.
У меня с ним страницы грузятся за 0,4-0,6 сек и 1,2-1,6 на мобильных по данным PageSpeed Insight.
Самое лучшее и удобное решение для WP, установил, один раз настроил и забыл. Работает как часы, сайты летают.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы