Установка и JavaScript API виджета
Подключение к HTML, Next.js, WordPress, Tilda и Bitrix. Команды open/close, события, consent и CSP.
В этой статье
Скопируйте embed-код из карточки Widget-канала. Loader создаёт кнопку чата и подгружает основной bundle после загрузки страницы, при первом действии посетителя или при вызове JavaScript API.
1. Подготовьте канал
- Откройте «Каналы» → «Виджеты сайта» и выберите нужный канал
- Настройте приветствие, внешний вид, форму перед чатом и режим ответов
- Добавьте каждый адрес сайта в «Доступ» → «Домены и защита»: например, betlens.ru и www.betlens.ru
- Скопируйте код из блока «Код для вставки»
2. Обычный HTML
Вставьте loader перед закрывающим тегом </body>. Замените YOUR_CHANNEL_ID на ID из карточки канала.
<script async src="https://novalead.ru/widget/YOUR_CHANNEL_ID"></script>3. Next.js App Router
Используйте next/script. Разместите Script в layout, который оборачивает только нужные маршруты. Для публичной части сайта удобно создать route group app/(public) и положить loader в app/(public)/layout.tsx. Next.js загрузит скрипт при первом открытии маршрута внутри этого layout и не будет загружать его повторно при переходах между вложенными страницами.
Виджет только на части маршрутов
Если переход из публичного layout в закрытую часть происходит без полной перезагрузки страницы, вызовите window.NovaLead.destroy() при размонтировании клиентской обёртки. Команда удалит DOM, socket, таймеры и обработчики виджета.
import Script from "next/script"
export default function PublicLayout({ children }: { children: React.ReactNode }) {
return (
<>
{children}
<Script
src="https://novalead.ru/widget/YOUR_CHANNEL_ID"
strategy="afterInteractive"
/>
</>
)
}Остались вопросы?
Опишите вопрос помощнику: он предложит тему и проверки. Если инструкция не поможет — Nova AI, затем специалист.