Joomla - PageSpeed Insights

Joomla - PageSpeed Insights

В этот раз мы более подробно разбираем результаты Joomla в PageSpeed Insights. О том возможно ли получит 100 или просто дойти до зеленой зоны. И о том надо ли это вообще гнаться за балами мы и поговорим.
Внимание
PageSpeed Insights - относительно не плохой инструмент для разработчиков, но не ломать свой сайт только ради того, чтобы получить 100 балов.

Возможно ли?

Возможно ли получить 100 балов или хотя бы войти в зеленую зону сайту на Joomla?
Ответ не однозначный. Все зависит от самого сайта, но по большей части получить 100 очень трудно, а вот 90+ уже не так сложно. Но если это уродует или замедлят, да да вы не ослышались, именно замедляет, то делать этого не стоит.

Как это сделать

Сократите время ответа сервера

Первое на что стоит обратить свое внимание это ответ сервера. Если оно в красной зоне то это может стать большой проблемой. Но и пытаться выжать ответ сервера в зеленую зону(меньше 0.18), тоже не стоит спешить. Чтобы уменьшить ответ сервера, необходимо по максимом облегчить сайт.

  1. Убрать лишние плагины.
  2. Убрать не нужные модули, некоторые из модулей можно подгружать через ajax.
  3. Если станица - это категория, то стоит уменьшить кол-во материалов на одной странице.

Если же ответ все еще не упал меньше 0.8того возможно стоит задуматься о смене компонента.

Не используйте переадресацию с целевой страницы

С этим пунктом все достаточно ясно, чаще все с ним бывают проблемы у сайтов с слишком большим числом преадресаций. Требования по этому пункту следующие:

  • Хорошо: на странице example.com используется адаптивный веб-дизайн, переадресация не выполняется.
  • Удовлетворительно: выполняется переадресация example.com на m.example.com/home
  • Плохо: выполняется переадресация example.com на www.example.com на m.example.com на m.example.com/home.

Включите сжатие

Хотя в joomla есть gzip сжатие или его можно прописать в .htaccess(если у вас apache), я настоятельно рекомендую размещать сайт на vps/vds сервере . Где сжатие можно включит на сервере без какого либо труда. Как это сделать стоит уточнить стоит у вашего хостинга. Все зависит от того стоит у вас панель(рекомендую isp) или же надо конфиг прописывать руками. Если же надо писать руками и вы не знаете как, то точно стоит обобраться в поддержку хостинга

Используйте кеш браузера

Тут так-же история что и с сжатием, за одиним исключение. Частенько бывают проблемы с внешними скриптам или стилями. К примеру с той-же Яндекс.Метрика. Вариантов решения три

  1. Перенсти к себе на сайт
  2. Удалить вовсе
  3. Обмануть тест

Писать про то как обмануть тест, в открытую я писать не буду, т.к это очень не рекомендуется делать. Если же вы все таки решись на это свяжитесь со мной и я вам расскажу как это сделать.

Сократите CSS

Небольшой скрипт для этого дела я уже выкладывал в блоге . Кроме того вы можете просто скачать оптимизированные ресурсы прямо с PageSpeed Insights после прохождения теста, перейдя по ссылке внизу страницы "Скачать оптимизированные изображения, ресурсы JavaScript и CSS для этой страницы". Ну а так же могу порекомендовать вот этот сервис по минимизации CSS

Сократите JavaScript

Песня та же что и с CSS. Сервис пойдет этот .

Оптимизируйте изображения

С изображениями дела обстоят же как и с CSS поможет разобраться мой скрипт , скачать с PageSpeed Insights, вот только сервиса вам не подскажу. Кроме того с оптимизацией изображений может помочь плагин JCH Optimize PRO . Правда иногда PageSpeed Insights требует обрезать размер изображений, и тут вам придется решать, не выполнять это требования, если на сайте нужно изображение именно этого размера. Либо обрезать и подгонять под это требование верстку сайта

Оптимизируйте загрузку видимого контента

Суть этого требования, достаточно проста:
  1. По максимом сократите html код страницы.
  2. Сначала должен идти основной контент, а только потом побочный

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

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

Наверное самая большая головная боль. Суть этого требования заключается в следующем.

Когда посетитель заходит к вам он должен получить как можно больше содержимомго сайта, без загрузки файлов CSS и JS. Для этого вам нужно:
  1. Перенести все стили и скрипты в подвал сайта.
  2. Выделить критический css, тобишь засунуть в head те стили которые необходимы для погрузки "Первого экрана"

Справиться с этими задачами помогут умелые руки и острый ум, так же как вариант можно использовать плагин JCH Optimize PRO либо серверные решения к примеру это .

Основная проблема заключается в том, что на многих сайтах, как ни старайся, получиться либо "прыгающий сайт", то есть сначала сайт грузиться в ужасном виде, а только потом становиться нормальным либо получается простыня стиля, от которой больше вреда чем пользы.

Так ли нужны эти балы

Еще раз напомню PageSpeed Insights - это инструмент, для разработчиков. Многие из требований действительно важны, а некоторыми можно и пожертвовать. 100 балов в PageSpeed Insights, дадут вам лишь чувство удовлетворение спортивного интереса. И даже ради него не стоит калечить сайты.


Настройки для JCH Optimize PRO

В довершении, хоть я и отказался от использования данного плагина, из-за того что он не всегда может вытянуть корректный Критичный CSS, да и увеличивает время ответа сервра(Без плагина - 0,23сек. С плагином 0,44сек) все же приложу скриншоты настроек JCH Optimize PRO