Задача знакома почти всем, кто ведёт сайт на Тильде дольше пары месяцев: баннер с акцией, блок доставки или форма заявки нужны сразу на десятке страниц, а обновлять их приходится вручную на каждой. Повторяющийся блок на страницах Тильды - штука, с которой сталкивается любой владелец многостраничника, и решается она далеко не только копированием через «Библиотеку блоков». Разберу рабочие варианты, которые применяю в проектах клиентов: от встроенного функционала Тильды до кастомного JS-инжекта и синхронизации между разными сайтами.
Почему копипаст блока по страницам создаёт проблемы
Стандартный путь в Тильде такой: собираешь блок один раз, сохраняешь в личную библиотеку и вставляешь копию на каждую нужную страницу. Работает, пока страниц три-четыре. На практике у клиентов бывает 15-30 лендингов под разные города или товарные категории, и уже на десятой странице кто-то из команды забывает обновить копию.
Был случай: у клиента с сетью лендингов под франшизу поменялась цена в баннере акции. Обновили 11 страниц из 14, три забыли - и два дня баннер с устаревшей ценой собирал жалобы в поддержку. Отдельная головная боль - блоки с юридической информацией или реквизитами: если такой блок продублирован руками, при проверке возникает риск, что на части страниц висит старая редакция.
Вторая проблема - время. Правка одного блока на 20 страницах вручную - это открыть редактор 20 раз, найти нужный элемент, поправить текст или картинку, сохранить и опубликовать. При почасовой ставке разработчика такая рутина стоит ощутимых денег, а при самостоятельной правке отнимает вечер вместо десяти минут.
Общий блок в Тильде: встроенное решение
В Zero Block у Тильды есть функция «Сделать общим блоком» (Global Block). Логика простая: один и тот же блок физически существует в проекте один раз, а на страницах размещаются его связанные копии. Правишь оригинал - изменения подтягиваются на всех страницах, где блок вставлен, без повторного редактирования и без повторной публикации каждой страницы отдельно.
Важное ограничение: общие блоки работают внутри одного проекта Тильды, то есть одного сайта с одним доменом и общим набором страниц в личном кабинете. Если у вас несколько отдельных сайтов на Тильде (например, разные домены под разные регионы), между ними общий блок не протянуть - для этого нужен другой подход, о котором расскажу дальше.
Второе ограничение - тариф. Общие блоки доступны начиная с тарифа Business и выше, на Personal и Start функции нет. Если сайт держится на младшем тарифе, а повторяющихся блоков много, дешевле обычно посчитать разницу в стоимости тарифа против стоимости часов на ручные правки - почти всегда выгоднее апгрейд.
Как подключить общий блок пошагово
Порядок действий в редакторе Zero Block такой:
- Собираете нужный блок на любой странице проекта как обычно - текст, изображения, кнопки.
- Кликаете на блок правой кнопкой мыши и выбираете пункт «Сделать общим блоком» (или аналогичный пункт в панели настроек блока, в зависимости от версии редактора).
- Даёте блоку понятное имя - пригодится, когда таких блоков накопится десяток и нужно будет найти нужный среди списка.
- На других страницах открываете библиотеку блоков, переключаетесь на вкладку «Общие блоки» и вставляете нужный блок из списка.
- После правок в оригинале публикуете страницы, где блок используется - без этого шага изменения не попадут в опубликованную версию сайта, хотя сам блок обновится во всех редакторах сразу.
Одна деталь, которая часто ломает логику новичков: старые типовые блоки Тильды (T450, T210 и подобные, не из Zero Block) в общие не переводятся - функция работает только с блоками, собранными в конструкторе Zero Block. Если сайт целиком на старых блоках, для повторяющегося контента остаётся либо перевод конкретного блока в Zero Block, либо кастомный скрипт.
Отдельно от общих блоков в Тильде есть встроенный механизм шапки и подвала (Header/Footer) в настройках проекта - для меню и футера они закрывают задачу «одна вёрстка на всех страницах» без всяких общих блоков, это отдельная и более старая функция.
Бесплатный материал
🎁 Полезный скрипт в подарок
Подпишитесь на Telegram - пришлю готовый скрипт по этой теме.
Без спама. Отписка в 1 клик.
Когда общий блок не подходит: JS-инъекция контента
Есть три ситуации, где встроенный общий блок не сработает: младший тариф без Business, блок нужен на разных сайтах (не страницах одного проекта), либо содержимое блока должно меняться по условию - например, показывать разный текст в зависимости от UTM-метки или региона посетителя.
В таких случаях я делаю проще: контент блока храню в одном месте (это может быть отдельная скрытая страница на самой Тильде, JSON на своём сервере или таблица в базе), а на нужных страницах вставляю пустой контейнер с идентификатором и скрипт, который подтягивает содержимое при загрузке страницы.
<div id="shared-promo-block"></div>
<script>
fetch('https://your-backend.ru/api/shared-block')
.then(function(res) { return res.text(); })
.then(function(html) {
document.getElementById('shared-promo-block').innerHTML = html;
});
</script>
Скрипт вставляется через настройки страницы «Ещё код для вставки» или в общий код проекта, если блок нужен везде. Правка происходит один раз на бэкенде, а не в 20 копиях внутри Тильды. Минус в том, что контент подгружается через доли секунды после отрисовки страницы - для баннера это незаметно, а для блока, критичного для SEO-текста в первом экране, лучше не использовать этот способ, поисковики не всегда дожидаются JS-рендера.
| Способ | Где работает | Сложность | Главный минус |
|---|---|---|---|
| Ручное копирование | любой тариф, любые блоки | нулевая | риск рассинхронизации на 3+ страницах |
| Общий блок Zero Block | внутри одного проекта, тариф Business+ | низкая | не работает между разными сайтами |
| JS-инъекция контента | любой тариф, любые сайты | нужен разработчик | контент подгружается с задержкой |
| Синхронизация через n8n/API | несколько сайтов, разные CMS | высокая | требует настройки и обслуживания сценария |
Синхронизация одного блока между несколькими сайтами Тильды
Отдельный случай - когда у бизнеса не один проект на Тильде, а несколько: например, франшиза, где у каждого партнёра свой сайт на своём поддомене или домене, но общий блок с акциями или контактами головной компании должен обновляться разом везде. Здесь общий блок Тильды не поможет вообще, поскольку он не выходит за границы одного проекта.
Рабочая схема - тот же JS-инжект, но контент отдаётся не статичным файлом, а через сценарий автоматизации: правка вносится в одном источнике (админка, таблица, CRM-карточка), а n8n или похожий инструмент публикует обновлённую версию блока в API-эндпоинт, к которому уже стучатся все сайты сети. Такую синхронизацию я обычно собираю как разовый проект под конкретную задачу клиента - если у вас похожая сеть сайтов на Тильде, разумнее сразу обсудить с разработчиком архитектуру, а не городить костыль на коленке: посмотреть подробнее про разработку кастомных решений для Тильды можно у меня в услугах.
Практические кейсы, где это чаще всего всплывает
Из того, что реально встречается в работе с клиентами:
- Промо-баннер с текущей акцией на всех лендингах товарной линейки - меняется раз в неделю, руками обновлять утомительно.
- Блок способов оплаты с логотипами эквайринга (в частности, интеграции с Т‑Банком) - вёрстка одинаковая на карточках товаров и на странице заказа.
- Блок доставки с расчётом стоимости через СДЭК - логика расчёта одна, а страниц с формой заказа много.
- Уведомление в шапке о времени работы поддержки или о статусе загрузки заявок - завязано на бэкенд и должно быть синхронно на всех посадочных.
- Виджет с уведомлением о заявке, который дублирует данные в Telegram-бота на aiogram - блок формы один и тот же, меняется только текст подтверждения под конкретный лендинг.
Во всех этих случаях логика одна: чем чаще блок меняется и чем больше страниц он затрагивает, тем дороже обходится ручное дублирование и тем быстрее окупается либо переход на общий блок Zero Block, либо кастомный скрипт синхронизации.
Когда стандартных блоков не хватает
Кастомный скрипт
от 3 000 ₽
Подробнее →Частые вопросы
Работает ли общий блок между разными сайтами на Тильде?
Нет, встроенная функция общих блоков в Zero Block действует только внутри одного проекта - одного сайта с общим набором страниц в личном кабинете. Для синхронизации между отдельными сайтами нужен кастомный скрипт или сценарий автоматизации.
На каком тарифе Тильды доступны общие блоки?
Функция открывается начиная с тарифа Business. На тарифах Personal и Start общих блоков нет, там остаётся либо ручное копирование, либо подключение внешнего скрипта для подгрузки контента.
Можно ли сделать блок общим только для части страниц?
Да, общий блок вставляется выборочно - вы решаете, на каких страницах он появится, при этом на страницах, где блок не добавлен, он не показывается и не занимает место в редакторе.
Что будет, если удалить общий блок с одной страницы?
Удаление копии с конкретной страницы не затрагивает сам блок и его копии на других страницах - оригинал и связанные экземпляры сохраняются, пропадает только конкретное размещение на удалённой странице.