К основному контенту

Решения для CMS

Популярные CMS постоянно развиваются и добавляют самый востребованный функционал. Если даже в самой CMS еще нет определенных функций, их можно найти в виде дополнительно устанавливаемых модулей.

Битрикс

В настройках главного модуля есть опции сжатия и объединения CSS/JS. В последних версиях CMS есть дополнительная опция "подключать скрипты в footer".



95% скриптов после переноса останутся работоспособными, но бывают ситуации, когда нужно запретить перенос скрипта вниз страницы. Запрет на перенос задаем атрибутом data-skip-moving="true"
See the Pen oeELZK by George Wise (@ink-jet) on CodePen.
В настройках главного модуля также можно задать "Качество JPG при масштабировании изображений (в процентах)". Этот параметр нужно уменьшить до 70.


Часто в robots.txt закрывают от индексации папку /bitrix/, вместе с ней файлы стилей, изображений и скриптов. При анализе бот Google видит страницы совсем без дизайна, что может негативно повлиять на результаты тестирования. Откройте необходимые папки для индексации.

Для оптимизации изображений можно использовать сторонние ресурсы, но 1С-Битрикс предлагает встроенный инструмент, решающий проблему. При включении CDN для вашего сайта и установленной галочке - оптимизировать ресурсы, изображения будут отдаваться CDN в оптимизированном виде, не требуя предварительной обработки. Кроме того CDN оптимизирует файлы JS и CSS.


Также в Битрикс Маркетплейс можно найти специализированные модули для ускорения загрузки страниц:
Настройка композитного кеша это отдельная и трудоемкая задача. Простое включение композитного кеша без настройки не даст прироста скорости, а иногда может даже замедлить загрузку страниц.

MODx

Для объединения нескольких CSS/JS файлов можно использовать специальный сниппет - MinifyX
See the Pen gxzoeW by George Wise (@ink-jet) on CodePen.
Для уменьшения объема HTML в MODx можно использовать плагин с таким кодом:
        if (!empty($modx->resource)
            && $modx->resource->get('cacheable')
            && $modx->resource->get('published')
            && $modx->resource->get('searchable')
            && $modx->resource->get('richtext')
            && $modx->resource->_output != ''
        )
        {
            $html = &$modx->resource->_output;
            $html = preg_replace('|\s+|', ' ', $html);
        }
Включение плагина должно происходить по событию onWebPagePreRender, соответственно, в системных событиях отмечаем нужный пункт.

Joomla

Убедитесь, что включен кеш CMS: “System” → “Global Configuration” → “Вкладка System”. Тут же можно включить сжатие - Gzip Page compression. После этого проверьте включен ли плагин кеширования страниц “Extensions” → “Plugins” → “System – Page Cache”. Иногда для кеширования могут использоваться сторонние расширения, например:
Расширения для оптимизации изображений:
Плагин JCH Optimize ускоряет сайт за счет объединения и минимизации CSS/JS файлов.

WordPress

На WordPress-сайте "из коробки" присутствует основной style.css текущей темы и несколько файлов со стилями плагинов.

Для того, чтобы отключить загрузку стилей отдельных плагинов, нужно сделать следующее: находим, где в плагине подключаются стили, обычно для этого используют функцию wp_enqueue_style(). Копируем идентификатор и отменяем регистрацию этого файла при помощи wp_deregister_style() в своем functions.php. Функция должна выполняться по событию 'wp_print_styles', вот так это выглядит полностью:
See the Pen ZJRKbN by George Wise (@ink-jet) on CodePen.
Далее, нужно обеспечить максимально быструю отрисовку первого экрана. Все стили, отвечающие за отрисовку первого экрана, минимизируются и вносятся прямо в блок head. Остальные стили остаются в style.css и подгружаются скриптом. Например, при помощи такого кода в "подвале":
See the Pen rzKmgL by George Wise (@ink-jet) on CodePen.
Все скрипты JS подключаются в конце страницы. Это делается добавлением нескольких строк кода в functions.php:
See the Pen rzKzyZ by George Wise (@ink-jet) on CodePen.
Более подробно об оптимизации JS и о подключении JQuery в "подвале", можно прочитать в разделе - "Оптимизация JS"

OpenCart / ocStore

Для OpenCart существует бесплатный модуль - OpenCart Lightning, который производит комплексную оптимизацию CMS с целью ускорения.

Шаблоны, которые оптимизированы под Google PageSpeed Insights, можно посмотреть тут.

Дополнительные ресурсы:



Комментарии