MANTRA: три быстрых сайта под отдельные ЖК вместо одного тяжёлого на Tilda

Клиент
Студия дизайна интерьеров MANTRA
Год
2026
Что делали
Сайты на ProcessWire, Переезд с Tilda, WordPress, Bitrix, Аудит: SEO, скорость, безопасность, Поддержка, серверы, бэкапы
Стек
ProcessWire, Статический кэш, Собственные модули, PHP, Vanilla JS, MariaDB, Apache
Сайт
republic-remont.ru

Три лёгких сайта под отдельные ЖК вместо одного тяжёлого на Tilda: HTML главной в 45 раз меньше, а все три собраны из одного исходника.

28КБ
было 1 270 КБ
HTML главной
mantra-design.ru на Tilda против republic-remont.ru, 11 сентября 2026
B
11
было 73
запросов при загрузке главной
republic-remont.ru; у Opus и Voxhall — 28 и 29. Tilda тянет файлы с десяти доменов, наши сайты — только со своего
B
3
сайта из одного исходника
Republic, Opus и Voxhall: правка в mantra-kit сразу доходит до всех трёх
B
MANTRA: сайты для ЖКMANTRA: сайты для ЖК

Задача

MANTRA — московская студия дизайна интерьеров. Её основной сайт, mantra-design.ru, собран на Tilda и рассказывает обо всём сразу: портфолио, услуги, цены, команда. Одна только HTML-разметка главной весит 1,3 МБ, а сама страница тянет 73 файла с десяти доменов.

Но клиенты студии часто ищут не «дизайн интерьера» вообще, а ремонт в конкретном доме — «дизайн квартиры в ЖК Opus». На такой запрос общий сайт отвечает плохо: он не про этот дом, и он тяжёлый. Для улучшения SEO мы решили сделать под каждый жилой комплекс, где работает студия, отдельный небольшой сайт — целиком про этот дом и максимально быстрый.

Republic — первый сайт семейства

republic-remont.ru: планировки квартир, проекты в этом доме, этапы работы и заявка — всё про один ЖКrepublic-remont.ru: планировки квартир, проекты в этом доме, этапы работы и заявка — всё про один ЖК
republic-remont.ru: планировки квартир, проекты в этом доме, этапы работы и заявка — всё про один ЖК

Один исходник — много сайтов

Сайты похожи внешне, но различаются контентом. Шаблоны, стили, скрипты, шрифты и API живут в отдельном репозитории mantra-kit. Каждый сайт — самостоятельная установка ProcessWire со своей базой, но своё у него только конфигурация, фирменные цвета, логотипы и контент. Всё остальное подключено из kit.

Подключение — ссылками на каталоги. Девять каталогов kit монтируются в сайт как NTFS junction. Файлы, которые ProcessWire открывает по точному пути, — init.php, ready.php и другие — это заглушки, которые подгружают своё тело из kit; .htaccess и файлы сборки копируются и сверяются при каждом запуске. Скрипт подключения можно запускать сколько угодно раз: то, что уже подключено правильно, он не трогает, старое сохраняет в резервную копию и отказывается заменять каталог с незакоммиченными правками.

Новый ЖК — это копия и контент. Каждая секция главной сама проверяет, есть ли у сайта для неё содержимое, и молча пропускает пустые. Поэтому один и тот же шаблон работает и на сайте с шестью секциями, и на сайте с девятью.

Как сайт подключается к kit

# подключить сайт к kit: один раз, повторный запуск ничего не ломает
.\kit-link.ps1 -Sites voxhall-design.osp

# junction: каталог сайта          → каталог mantra-kit
#   webroot\site\templates         → templates\
#   webroot\site\shared            → site-shared\
#   webroot\site\assets\fonts      → fonts\
#   webroot\api                    → api\
#   frontend\src\js, src\svg, src\css\_core …

# своё у сайта: site\config.php, frontend\src\css\_site\ (фирменные цвета),
#               site\assets\svg\logo-*.svg и контент в базе

Правка в kit сразу видна на всех подключённых сайтах — поэтому коммитить в него нужно аккуратно.

Скорость

Лёгкие по устройству. Без конструктора и сторонних CDN: все файлы главной грузятся со своего домена — от 11 до 29 запросов против 73 у основного сайта, а HTML-разметка весит 28−31 КБ вместо 1,3 МБ.

Новая сборка kit. CSS, JS и SVG-спрайт собираются одним проходом; в имени файла — хэш содержимого, поэтому браузер кэширует его на год и никогда не получает устаревшую версию, а на запросе посетителя ничего не компилируется. Шрифты урезаны до латиницы и кириллицы и переведены в woff2: было 387 КБ, стало 114. Картинка первого экрана отдаётся в AVIF или WebP. Первым на новую сборку переехал opus-design.ru.

Свои модули. Статический кэш StaticPages отдаёт готовый HTML без запуска PHP и базы, типограф OutputTransformer расставляет кавычки и неразрывные пробелы. Оба — наши модули ProcessWire, и подключены они к сайтам так же, как kit: исправление в модуле доходит до всех сайтов сразу.