Tilda · 6 мин чтения

Авторизация на Тильде: вход по логину и закрытые разделы

Авторизация на Тильде нужна, когда часть сайта нельзя показывать всем подряд: прайс для партнёров, курс с уроками, каталог для оптовиков или личный кабинет с историей заказов. У Тильды есть два готовых инструмента для этого, встроенный личный кабинет с регистрацией по email и пароль на отдельную страницу, и в большинстве проектов их хватает без единой строчки кода. Ниже показываю, как включить вход по логину, закрыть конкретные разделы и куда передавать данные о новых пользователях, а в конце, где у встроенных механизмов заканчиваются возможности.

Как работает авторизация на Тильде: два штатных механизма

Внутри Тильды за ограничение доступа отвечают две разные настройки, и их легко перепутать между собой. Личный кабинет, это полноценная регистрация: посетитель вводит email, получает код подтверждения и с этого момента заходит на сайт под своим аккаунтом. Тильда хранит список таких пользователей и позволяет отмечать конкретные страницы как доступные только им.

Второй инструмент, пароль на странице, это общий код доступа к одной конкретной странице без всякой регистрации. Он подходит, когда нужно один раз дать ссылку узкому кругу людей, например партнёрам на время акции или клиенту на приёмку макета.

Выбор зависит от сценария. Если на сайте продаётся курс с личным кабинетом ученика или в интернет-магазине нужна история заказов у каждого покупателя, ставлю личный кабинет. Если закрыть нужно один прайс-лист или лендинг для конкретного клиента, проще поставить пароль на страницу и не городить регистрацию ради разовой задачи.

Личный кабинет Тильды: включаем вход по логину и email

Модуль включается в Настройки сайта → Подключаемые модули → Личный кабинет → Управление модулем. По порядку делаю так:

  • Задаю способ входа: Настройки личного кабинета → вкладка «Дополнительные» → пункт «Способ регистрации и авторизации». Вариантов три: по email с постоянным паролем или одноразовым кодом, по телефону с одноразовым кодом, по телефону или email на выбор пользователя.
  • Включаю страницу регистрации в настройках личного кабинета, она создаётся автоматически и живёт по адресу вида yoursite.com/members/signup, а вход по yoursite.com/members/login.
  • Создаю группу пользователей кнопкой в левом меню кабинета и назначаю ей индексную страницу со всеми материалами.
  • Закрываю нужные страницы: на вкладке «Страницы» внутри группы переключаю их статус на «Добавлено в группу», после этого страница доступна только участникам этой группы.

После этого при попытке открыть закрытую страницу без входа Тильда сама показывает форму логина, а личность подтверждается кодом, который приходит на email. Список зарегистрировавшихся хранится в настройках личного кабинета, оттуда его можно выгрузить.

Закрытые разделы: пароль на странице или личный кабинет

Чтобы не путать эти два инструмента при выборе, сравниваю их по трём практическим критериям.

Критерий Пароль на странице Личный кабинет
Как получают доступ Вводят один общий код Регистрируются под своим email
Хранит ли Тильда данные о человеке Нет, код не привязан к конкретному пользователю Да, есть список зарегистрированных с профилем
Когда использую Разовая ссылка узкому кругу, например партнёрам на время акции Курс, каталог для клиентов, кабинет с историей заказов

Мешать эти два механизма на одной странице не стоит. Если на странице уже стоит пароль, работает именно он, а не проверка авторизации через личный кабинет.

Оформление формы входа и писем

Форма логина подхватывает шрифты и цвета текущего проекта, но текст и структуру полей можно поменять. В настройках личного кабинета редактирую подписи полей на форме регистрации, текст письма с кодом подтверждения, тему письма и обратный адрес отправителя. Если письмо с кодом теряется в спаме, в первую очередь меняю тему письма на что-то с названием компании, а не общий текст по умолчанию.

Отдельно указываю, куда человека перенаправить после входа. Обычно это личный кабинет с историей заказов или страница с закрытым каталогом, а не главная страница сайта, на которую он и так уже попал.

Куда передавать данные о новых пользователях

Каждая регистрация в личном кабинете, это лид, и держать его только внутри Тильды неудобно, если менеджеры работают в CRM. Личный кабинет отправляет вебхук при регистрации, и его можно направить дальше: в amoCRM или Битрикс24 напрямую, если у CRM есть приём вебхука в нужном формате, или через сценарий в n8n, если данные сначала нужно обработать, например разложить телефон и email по конкретным полям сделки.

Бесплатный материал

🎁 Полезный скрипт в подарок

Подпишитесь на Telegram - пришлю готовый скрипт по этой теме.

Без спама. Отписка в 1 клик.

Автоматизация в n8n у меня начинается от 25 000 ₽, и тут сразу решаю, где n8n будет жить. Облачная версия оплачивается подпиской и не требует обслуживания, а self-hosted вариант это отдельный сервер, который нужно обновлять и продлевать сертификат самостоятельно, для сайта на Тильде с редкими регистрациями это лишние расходы.

Отдельно завожу уведомление в Telegram: как только приходит вебхук о новой регистрации, бот присылает админу сообщение с email и временем. Такого бота обычно пишу на aiogram, он забирает данные из входящего запроса и пересылает их в чат, без сложной логики внутри.

Когда встроенного личного кабинета не хватает

Группы в кабинете штатные: пользователей делят на группы, каждой группе назначают список доступных страниц и индексную страницу, а ещё срок доступа, по истечении которого участников исключают из группы автоматически. Схема «бесплатный тариф и платный с разным набором разделов» собирается настройками, без кода. Продажа доступов сразу в несколько групп через каталог товаров тоже есть, но она помечена как функция в режиме тестирования и включается галочкой «Участвовать в тестировании новых функций» в Профиле.

Своя логика нужна там, где штатных настроек действительно нет: показать пользователю дату окончания его доступа, напомнить о конце подписки за несколько дней, продлить доступ автоматически, собрать единый список «мои подписки». API Тильды тут не помощник, он только читающий и работает с проектами и страницами, а не с участниками кабинета. Данные, которые нельзя просто спрятать в браузере, например оптовые цены, отдаю через отдельный PHP-обработчик на том же хостинге, где лежит сайт, с проверкой доступа на сервере, а не только на клиенте.

Такие задачи закрываю как кастомную доработку Тильды: простая правка вроде своего текста ошибки при входе стоит от 3 000 ₽, а комплексная интеграция с CRM, эквайрингом и расчётом доставки через СДЭК, от 40 000 ₽.

Условия и возможности Тильды меняются, поэтому перед запуском я уточняю их у самого сервиса.

Частые вопросы

Можно ли сделать несколько уровней доступа в личном кабинете Тильды?

Да, для этого есть группы. Пользователя добавляют в группу, а группе назначают список доступных страниц, индексную страницу и срок доступа. Бесплатный и платный уровень это просто две группы с разным набором страниц, кодом их закрывать не нужно.

Как передать данные о новых пользователях в CRM?

Личный кабинет отправляет вебхук при регистрации. Настраиваю его на приём в CRM напрямую или через сценарий в n8n, если данные нужно сначала преобразовать под поля сделки.

Чем пароль на странице отличается от личного кабинета?

Пароль на странице, это один общий код без регистрации, подходит для разовой ссылки узкому кругу. Личный кабинет хранит список пользователей с их профилями и подходит, когда доступ нужен на постоянной основе, например в курсе или интернет-магазине.

Нужен ли отдельный сервер, чтобы включить авторизацию на Тильде?

Нет, оба штатных механизма работают в рамках обычного хостинга Тильды, отдельный сервер не нужен. Он появляется в схеме только если добавляю свою серверную проверку доступа или автоматизацию вроде self-hosted n8n, и тогда его нужно обслуживать отдельно от тарифа Тильды.

Есть задача?

Обсудим в мессенджере

Расскажите, что нужно сделать — отвечу в течение 4 часов в рабочее время. Первая консультация бесплатно.

Продолжая пользование настоящим сайтом Вы выражаете своё согласие на обработку Ваших персональных данных (файлов куки) с использованием Yandex.Metrika.
Понятно