Копия страницы в Тильде кажется тривиальной задачей: нажал «Копировать» в панели - получил дубль за секунду. На практике после такого клонирования я регулярно чиню интеграции клиентам: письма с формы перестают долетать до CRM, промокод перестаёт проверяться, скрипт СДЭК-калькулятора вообще пропадает с опубликованной страницы. Причина всегда одна - блоки при копировании получают новые технические ID, а кастомные скрипты и вебхуки продолжают ссылаться на старые адреса. Разберу, как сделать копию страницы в Тильде и не потерять ни одну привязку: от ID блоков до эквайринга и Яндекс.Метрики.
По теме статьи
Готовое решение
Ограничение применения промокода в корзине Tilda
Промокод в Tilda не действует на выбранную категорию (например, «Распродажа»). Готовый скрипт + инструкция по подключению.
от6 000 ₽
Кастомный скрипт
Когда стандартных блоков не хватает
Доработка сайтов на Тильде: скрипты для корзины, промокоды, зоны доставки, интеграции с CRM и Telegram. Простой скрипт от 3 000
от3 000 ₽
Когда нужна копия страницы, а не новый лендинг с нуля
Дублирование оправдано, когда структура страницы остаётся прежней, а меняется только часть контента или трафик, который на неё ведёт.
- А/В‑тест заголовка и оффера - две версии первого экрана крутятся параллельно, а конверсия сравнивается по одинаковой воронке ниже.
- Сезонная версия под акцию - копия основного лендинга с изменённым баннером и таймером, которую после распродажи просто снимают с публикации.
- Гео-версия под другой город - другой номер телефона, адрес шоурума и своя зона доставки СДЭК в калькуляторе.
- Версия под конкретный рекламный канал - для Яндекс.Директа один заголовок, для VK Рекламы другой, при этом форма и оплата настроены одинаково.
Из практики: у клиента с розницей на Тильде было три города с разными складами. Проще было скопировать посадочную страницу три раза и в каждой копии поменять зону доставки в скрипте, чем городить условную логику внутри одной страницы под все города сразу.
Как сделать копию страницы в Тильде через панель управления
Штатный способ работает внутри одного проекта:
- Открываю проект, в списке страниц навожу на нужную и нажимаю «…» рядом с названием.
- Выбираю «Копировать» - Тильда создаёт страницу с именем вида «Copy of …» и своим path в адресе.
- Сразу переименовываю страницу и задаю человекочитаемый путь в настройках SEO страницы, иначе автоматический path останется техническим и будет путать и посетителей, и статистику.
- Публикую копию отдельно от оригинала, не перезаписывая уже опубликованную страницу.
- Формы. Настройка «куда отправлять заявки» копируется вместе с блоком, поэтому оригинал и копия по умолчанию шлют лиды в одну и ту же CRM или Telegram-бот на aiogram под одним и тем же названием формы - заявки перемешиваются, и непонятно, с какой страницы пришёл клиент.
- Счётчики. Цели в Яндекс.Метрике и Google Analytics обычно привязаны к URL страницы, а у копии URL новый - без пересборки целей аналитика по копии будет пустой.
- Скрипты с лимитами. Если на странице стоит ограничение промокодов или счётчик остатков, а логика хранит состояние по адресу страницы, у копии счётчик начнёт считать с нуля вместо того, чтобы делить лимит с оригиналом.
- Общий JS выношу в отдельный файл и подключаю через
<script src="...">в настройках страницы или проекта, а не вставляю код целиком в Т123-блок - тогда правка в одном месте применяется сразу ко всем копиям. - Вместо ID блока (
#rec612345678) использую произвольный класс или data-атрибут, который задаю через настройки блока «Класс блока» - такой селектор переживает копирование, потому что не завязан на автогенерируемый номер. - После копирования проверяю название формы, которое уходит в CRM или в вебхук n8n, и меняю его на уникальное для копии, чтобы заявки с разных страниц не сливались в одну ленту.
- Отдельно смотрю зоны доставки в калькуляторе СДЭК - если на копии другой город или склад, менять нужно не саму логику, а исходные данные, с которыми она работает.
Если нужна полная копия проекта для тестов перед деплоем изменений, в настройках проекта есть «Дублировать проект» - переносятся все страницы разом с сохранением внутренних ссылок между ними. Для копии одной конкретной страницы этот вариант избыточен.
| Способ | Что переносится автоматически | Что донастраивать руками |
|---|---|---|
| Копия страницы в проекте | Блоки, тексты, форма, настройки SEO страницы | Path, названия для CRM, ID в кастомных скриптах |
| Дублирование всего проекта | Все страницы и внутренние ссылки между ними | Домен публикации, интеграции с внешними сервисами |
| Копирование блоков между проектами (Ctrl+C/Ctrl+V) | Содержимое и стили конкретных блоков | Скрипты в head/footer проекта, вебхуки форм |
Что ломается при дублировании: ID блоков, формы и счётчики
Основная причина поломок - каждый блок при копировании получает новый технический ID вида rec612345678. Если скрипт был написан под конкретный ID, на копии он просто не находит элемент.
// работало на оригинальной странице
document.querySelector('#rec612345678 .tn-atom').addEventListener('click', openCdekWidget);
// на копии блок получил новый ID, селектор ничего не находит
document.querySelector('#rec612345678 .tn-atom'); // null
Ещё три места, где всплывают проблемы:
Бесплатный материал
🎁 Полезный скрипт в подарок
Подпишитесь на Telegram - пришлю готовый скрипт по этой теме.
Без спама. Отписка в 1 клик.
Как перенести кастомные скрипты на копию без потери интеграций
Чтобы копия страницы в Тильде не превращалась в отдельный ремонт, я придерживаюсь нескольких правил ещё на этапе написания скрипта для оригинала.
Готовый виджет с логикой зон доставки для Тильды, который умеет работать сразу с несколькими адресами отгрузки, есть в библиотеке готовых скриптов - это быстрее, чем переписывать калькулятор под каждую новую копию страницы с нуля.
Перенос страницы между проектами Тильды
Штатного «скопировать страницу в другой проект» одной кнопкой в Тильде нет. Работают два обходных пути.
Первый - копирование блоков через буфер обмена: открываю оба проекта в соседних вкладках под одним аккаунтом, выделяю блоки на исходной странице, копирую и вставляю на новую страницу в другом проекте. Содержимое и стили переносятся, а вот скрипты, подключённые в настройках проекта (в разделе с кодом перед и перед