Системный плагин Joomla 3 для управления скриптами и стилями: удаляет лишние JS и CSS, переносит их в конец страницы, добавляет async и defer, минифицирует и склеивает файлы.
JsCssManipulate управляет подключением JavaScript и таблиц стилей на страницах сайта Joomla без правки кода шаблона. Плагин помогает приблизиться к требованиям Google PageSpeed: убрать ненужные файлы, отложить загрузку скриптов и стилей, сократить их объём. Все требования PageSpeed он не закрывает, но основную рутину берёт на себя.
Возможности
- Удаление лишних файлов JavaScript и CSS.
- Принудительная асинхронная (async) или отложенная (defer) загрузка JS.
- Перенос JS и CSS в конец страницы (футер).
- Порядок сортировки скриптов при переносе в футер.
- Минификация и склейка JS и CSS.
- Компиляция Less и Sass.
- Вырезание скриптов, встроенных в HTML.
- Исключения для удаляемых файлов по параметрам запроса.
Примеры применения
- Лишний скрипт на сайте. Достаточно указать в плагине ссылку на файл и отметить удаление. Особенно полезно, когда на странице дублируются библиотеки jQuery или Bootstrap.
- Оптимизация под PageSpeed. Сжатие JS и CSS, отложенная загрузка и перенос в футер сокращают время до появления контента.
- Много скриптов в
head. Если все скрипты грузятся до контента, большую часть можно отложить и загружать только необходимое.
Синтаксис исключений
В исключениях указываются параметры запроса (REQUEST) и их значения. Параметр и значение разделяются знаком =, параметры — знаком &, несколько значений одного параметра — запятой. Например:
option=com_content&view=article,category&catid=1,2,3,4,5
Строка обрабатывается по логике «И»: option равен com_content, view — article или category, catid — одно из значений 1–5.
Частые вопросы
Стиль исчез из head, но не появился внизу страницы. Что не так?
Для диагностики нужно включить в настройках плагина параметр «Отладка JsCssManipulate» и посмотреть, что выводится, а также временно отключить минификацию — после этого обычно видно, на каком этапе теряется файл.
Совместимость и требования
- Joomla 3.
- Тип расширения — системный плагин.