Fast Blocks Документация
Что делает модуль
Две независимые возможности, у каждой свой переключатель в Модули → [TH] Fast Blocks → Настройки.
1. Блоки по устройствам
CS-Cart умеет скрывать блок на телефоне, планшете или десктопе галочками видимости в Дизайн → Макеты. Без модуля это правило отображения: блок всё равно собирается и уезжает в браузер, а прячут его уже стили. С модулем блок для этого устройства не собирается вовсе.
Настраивать заново ничего не нужно. Включите настройку, и галочки, которыми вы и так пользуетесь, начнут экономить трафик.
Два следствия, к которым стоит быть готовым:
- Блок, скрытый на телефонах, отсутствует в исходном коде страницы на телефоне. Это норма, а не ошибка.
- Кеш блоков хранится отдельно для телефона, планшета и десктопа, поэтому первый посетитель не прогревает кеш за всех.
2. Ленивые блоки
Откройте Дизайн → Макеты, щёлкните блок, поставьте галочку Загружать лениво. Блок уйдёт из первого ответа и будет запрошен, когда посетитель прокрутит близко к нему. Задайте резервируемую высоту, чтобы страница не дёрнулась в момент появления блока.
За сколько экранов начинать загрузку, задаётся один раз на весь магазин. По умолчанию 2: блок начнёт грузиться, когда до него останется два экрана.
Какие блоки отмечать
| Отмечать ленивыми | Не трогать |
|---|---|
| Товарные скроллеры ниже первого экрана | Всё, что на первом экране |
| Полосы брендов, баннеры, блоки отзывов | Основное содержимое, фильтры товаров, хлебные крошки |
| Блог и плитки категорий ниже по странице | Блоки корзины и оформления заказа |
Второй столбец модуль обеспечивает сам: у таких типов блоков галочки просто нет, поэтому неверный клик не сломает ни выдачу, ни шаг оформления заказа.
Скелетон
Пока блок грузится, его место держит скелетон, повторяющий форму того, что приедет: карточки для товаров, полоса для логотипов, лента для баннера, строки для текста. Форма выбирается автоматически по типу блока и его шаблону; если подбор не подошёл, выберите форму сами в настройках блока.
Скелетон можно выключить целиком в настройках модуля. Если выключаете, заполните резервируемую высоту у каждого ленивого блока: без скелетона место держать больше нечем.
Кеш перед магазином
Модуль решает, что собирать, по User-Agent, поэтому любой кеш перед PHP должен знать, что ответ от него зависит. Модуль отдаёт Vary: User-Agent, пока включена раздача по устройствам, и правильно настроенному кешу этого хватает. Два случая требуют внимания:
- Микрокеш nginx или FastCGI cache. Добавьте
$http_user_agentв ключ кеша или хотя бы производный от него признак устройства. Кеш по одному URL сохранит десктопную страницу и отдаст её телефонам. - Varnish и Cloudflare. Оба по умолчанию игнорируют
Vary: User-Agentдля HTML. В Varnish приведите User-Agent к классу устройства вvcl_recvи добавьте его в хэш. В Cloudflare используйте Cache Rules со своим ключом кеша либо отключите кеширование HTML.
Проверка за минуту: запросите одну и ту же страницу дважды со свежим параметром в адресе, обычным браузером и телефонным, и сравните размеры. Если они совпадают, хотя блок скрыт на телефоне, значит кеш отдаёт обеим версиям одно и то же.
Поисковые системы
Google индексирует mobile-first. Блок, скрытый на телефонах, отсутствует и на той странице, которую видит Google, поэтому скрытие текстового контента на телефоне убирает его из индекса. Скрывайте оформительские блоки, а не те, которые должны находиться в поиске.
Ленивых блоков это не касается: они запрашиваются и отрисовываются, пока страница оценивается, поэтому робот, выполняющий JavaScript, их видит.
Если что-то пошло не так
| Что видите | Что проверить |
|---|---|
| Скрытые блоки всё равно приходят на телефон | Кеш перед магазином, см. выше. Проверяйте со свежим параметром в адресе. |
| Блок остаётся скелетоном | Откройте консоль браузера. Если запрос возвращает пусто, блок скорее всего уже не помечен ленивым: сервер сверяется с базой, а не с запросом. |
| Страница дёргается при появлении блока | Задайте этому блоку резервируемую высоту. |
| Модуль сам выключился | Не заполнен номер лицензии или он не совпадает с доменом. Модули → [TH] Fast Blocks → Настройки → Активация. |
Скорость магазина
Этот модуль убирает то, что витрине незачем отправлять. Вторая половина скорости зависит от сервера: кэш, сжатие, HTTP/2, формат картинок. Всё, что мы применили на своём демо-сервере, и цифры, которые это дало, собраны на отдельной странице:
Две настройки оттуда делаются в админке за минуту и сильнее всего влияют на вес картинок:
- Настройки → Иконки → Формат иконки: WEBP
- загрузка картинок в том размере, который тема реально использует
Список изменений
1.00 (5 августа 2026) Первый релиз
Fast Blocks Документация