В последней версии Chrome (76) добавлен новый атрибут «загрузка», который поддерживает встроенную отложенную загрузку в браузере . Реализация ядра WordPress все еще обсуждается. Между тем, плагины, которые позволяют это сделать для сайтов WordPress, начинают появляться, и Google только что выпустил один из них.
Native Lazyload был создан инженером Google Феликсом Арнцем и командой, стоящей за официальными плагинами AMP и PWA для WordPress. Он лениво загружает изображения и фреймы с новым атрибутом загрузки для браузеров, которые его поддерживают. Он также включает резервный механизм для браузеров, которые его еще не поддерживают, но его можно отключить с помощью фильтра. У плагина нет настроек – пользователи просто активируют его, и он работает.
В сообщении, представляющем новый плагин, Арнц объясняет, почему текущие параметры отложенной загрузки, для которых требуется специальный JavaScript, не всегда хороши для производительности:
Ленивая загрузка долгое время не была переключателем, который можно просто переключить, чтобы заставить его работать. Это не было функцией браузера, поэтому для ее работы обычно требовалось загрузить и запустить пользовательскую логику JavaScript. К сожалению, сам JavaScript является дорогостоящим ресурсом, поэтому ленивая загрузка, как это было до сих пор, может в некоторых случаях на самом деле отрицательно сказаться на производительности (например, если страница не содержит изображений или содержит только одно изображение, которое сразу видно ). Более того, если бы пользователь отключил JavaScript в своих браузерах, отложенная загрузка вообще не работала бы.
Плагин использует аналогичную реализацию, которая обсуждается в основной заявке. Арнц описал это как «прогрессивное улучшение», при котором производительность веб-сайта пользователя «волшебным образом улучшится без вмешательства», поскольку все больше браузеров добавляют поддержку атрибута загрузки.
С выпуском этого плагина и вкладом Google в соответствующий запрос trac стало ясно, что компания заинтересована в том, чтобы ядро WordPress поддерживало новый атрибут загрузки. Менеджер по разработке Chrome Адди Османи прокомментировал обращение 10 дней назад, чтобы выразить свою поддержку усилиям и дать несколько рекомендаций.
«Я очень сторонник того, чтобы ядро получило поддержку нативной отложенной загрузки неразрушающим способом», – сказал Османи.
«Идеальное изменение, которое я хотел бы увидеть в плагинах с отложенной загрузкой, – это откладывание на родную отложенную загрузку там, где она поддерживается, и применение их отката там, где ее нет». По оценке Османи, согласно данным телеметрии Google, более 17 тысяч источников уже используют loading = lazy.
Энди Поттс, инженер-программист BBC, сообщил о значительном улучшении производительности после внедрения нативной отложенной загрузки. Он реализовал его на одном из внутренних продуктов компании, на сайте с примерно 3000 активных пользователей в день:
«Одно из наиболее распространенных действий на сайте включает выполнение запроса, который отображает список из 100 изображений, что, по моему мнению, было идеальным местом для экспериментов с нативной отложенной загрузкой», – сказал Поттс.
«Добавление атрибута загрузки к изображениям уменьшило время загрузки при быстром сетевом соединении на ~ 50% – оно увеличилось с ~ 1 секунды до <0,5 секунды, а также сэкономило до 40 запросов к серверу . Все эти улучшения производительности просто за счет добавления одного атрибута к набору изображений! »
Крис Гуннарс, управляющий searchfacts.com , добавил на свой сайт новый плагин Google Native Lazyload и сообщил о значительных улучшениях производительности, особенно на мобильных устройствах.
«После того, как я установил это, мой мобильный показатель PageSpeed увеличился с 92 до 96, а также на целых 1,5 секунды меньше моего показателя Time to Interactive», – сказал Гуннарс.
Поскольку на WordPress работает 34,5% из 10 миллионов лучших веб-сайтов, основная поддержка нативной отложенной загрузки оказывает огромное влияние на общую производительность Интернета. Работа над тикетом идет медленно, так как участники продолжают обсуждать лучший подход. Тем временем пользователи, которым не терпится внедрить его на своих сайтах, могут установить любой из ряда уже доступных плагинов.