
Форма подписки Unisender ставится на WordPress четырьмя разными способами — от простого копирования кода на страницу до собственного обработчика, который отправляет адреса в сервис через API. Какой выбрать, зависит от того, где форма должна стоять: на одной странице, во всех статьях сайта или сразу в нескольких местах.
Ниже — что подготовить в кабинете, чем отличается JS-код формы от HTML, как вставить код через редактор темы и через файловый менеджер хостинга, как работает свой обработчик и какие ошибки чаще всего допускают новички.
Что подготовить в Unisender до установки
Форма — это только витрина: сами адреса собираются в сервисе, и без подготовки они уйдут «в никуда». Сначала заведите список контактов, куда будут попадать подписчики, и добавьте отправителя писем на своём домене: бесплатные адреса на Mail.ru, Gmail и Яндексе сервис не принимает как отправителя рассылки.
| Что подготовить | Зачем |
|---|---|
| Аккаунт Unisender и подтверждённый адрес | Без подтверждения аккаунта письма не уходят |
| Список контактов | Форма складывает адреса в конкретный список — иначе их потом не разложить |
| Отправитель на своём домене | Письмо подтверждения должно приходить от вашего адреса, а не от чужого ящика |
| Записи SPF и DKIM | От них зависит, попадёт ли подтверждение во «Входящие», а не в спам |
| Текст согласия на обработку данных | Рядом с кнопкой должна быть ссылка на документ — это требование закона |

Встроенная форма или всплывающая: что выбрать для блога
Unisender собирает формы в разделе «Инструменты → Формы», и создание идёт по трём шагам: «Дизайн», «Настройки», «Интеграция». Форма бывает двух типов — встроенная, которая стоит в любом месте страницы, и всплывающая, которая появляется поверх сайта по заданным условиям.
Для блога почти всегда выигрывает встроенная: всплывающее окно раздражает читателя, который пришёл за статьёй, и многие закрывают его не читая. Всплывающую форму стоит включать только там, где она уместна, — например, на странице лид-магнита с таргетингом по источнику трафика.
На шаге «Интеграция» сервис даёт код формы в двух форматах. JS-код вставляет форму ровно в том виде, в котором вы её собрали в редакторе: правки в кабинете подтягиваются на сайт сами. HTML-код даёт разметку, которую можно менять руками — это нужно, когда форму хочется вписать в стиль темы. Для большинства случаев берите JS: меньше шансов, что стили сайта что-то сломают.
Способ 1: код формы на странице WordPress
Самый простой путь, который описывает и сам Unisender: код вставляется прямо в страницу. В консоли WordPress откройте «Страницы → Все страницы», выберите нужную страницу или создайте новую, затем переключитесь в редактор кода — кнопка с тремя точками в правом верхнем углу, пункт «Редактор кода», горячие клавиши Ctrl+Shift+Alt+M.
Вставьте скопированный код в нужное место разметки, нажмите «Просмотреть», проверьте результат в отдельной вкладке и опубликуйте страницу. Этот способ хорош для страницы подписки и для лид-магнита, но у него есть граница: форма появится только там, куда вы её вставили.
Способ 2: код через редактор темы в WordPress
Если форма нужна в каждой статье или в подвале сайта, вставлять код в каждую запись руками бессмысленно. Здесь помогает тема: «Внешний вид → Редактор файлов темы». Правильный путь — не вставлять тег со скриптом в разметку, а подключить свою функцию в functions.php дочерней темы: так код живёт в одном месте, а форма выводится хуком — например, после текста статьи или в подвале.
Два правила, которые сэкономят вам вечер. Первое: не правьте родительскую тему — при её обновлении ваши строки исчезнут вместе с формой. Второе: держите копию вставленного кода у себя в файле. Если редактор в админке отключён или файлы темы доступны только на чтение, переходите к следующему способу.

Способ 3: код через хостинг и файловый менеджер
Через панель хостинга правка выглядит так: открыть файловый менеджер, зайти в wp-content/themes/имя-дочерней-темы/, скачать functions.php к себе, добавить код в конец файла, залить обратно с заменой. Кодировка — UTF-8 без BOM, права на файл — 644, лишних пробелов после закрывающего тега быть не должно: один такой пробел иногда роняет весь сайт в белый экран.
Аккуратнее — положить код отдельным файлом в wp-content/mu-plugins/. Такие файлы WordPress подключает автоматически, они не зависят от темы и не пропадают при обновлениях; если что-то сломалось, файл просто удаляется через тот же файловый менеджер. Именно так на этом блоге собраны все доработки: разметка рекламных блоков, форма подписки в конце статьи, кнопки «поделиться».
Перед любой правкой скачайте себе тот файл, который меняете. И после заливки очистите кэш — и кэш страниц на сайте, и кэш браузера, иначе вы увидите старую версию и решите, что код не сработал.

Способ 4: своя форма и API Unisender
Четвёртый способ нужен, когда стандартная форма не подходит: например, форма должна стоять в сайдбаре, а галочка «подписаться на новости» — внутри другой формы на сайте. Здесь код формы не вставляют, а пишут небольшой обработчик: посетитель заполняет вашу форму, она отправляет данные на ваш сервер, а сервер вызывает метод subscribe в API Unisender и передаёт адрес, список и метку.
Так сделано на этом блоге: три точки сбора — форма в сайдбаре, галочка в форме чек-листа и блок подписки в конце каждой статьи — пишут в один список Unisender с метками, по которым видно, откуда пришёл человек. Пришлось учесть две вещи: обработчик формы пришлось повесить на ранний запуск WordPress, потому что стандартный admin-post.php на сайте закрыт для гостей плагином безопасности и отвечал перенаправлением; а контакты, которые уже были в сервисе, пришлось отдельно добавлять в список — подписка сама их туда не переносит.
Выбирайте этот способ, если готовы к коду или у вас есть кому его написать: он даёт полный контроль над видом формы, а сервис можно поменять, не переделывая сайт. И сразу проверьте двухэтапную подписку: после отправки формы человек должен получить письмо со ссылкой подтверждения, и только после перехода по ней адрес становится активным.

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

Если письмо не пришло — смотрите по порядку: папку «Спам», статус контакта и настройки домена (SPF, DKIM). Если формы нет на странице — проверьте, активна ли она в кабинете, стоит ли код именно там, где нужно, и не мешает ли кэш. Отдельно посмотрите страницу с телефона: на маленьком экране всплывающие формы иногда перекрывают кнопку и подписаться невозможно.

Частые ошибки новичков
| Ошибка | Что будет | Как правильно |
|---|---|---|
| Форма только на одной странице | Подписчиков почти нет: читатель редко ищет страницу подписки | Форма в конце статей и в сайдбаре, плюс отдельная страница |
| Правка родительской темы | После обновления темы форма исчезает | Дочерняя тема или файл в mu-plugins |
| Правка без бэкапа | Опечатка в PHP — и сайт отдаёт белый экран | Скачать файл до правки |
| Два кода формы на одной странице | Две формы подряд, двойные письма | Один код на одно место |
| Форма без согласия на обработку данных | Нарушение требований к сбору персональных данных | Ссылка на документ рядом с кнопкой |
| Отправитель на mail.ru или Яндексе | Сервис не примет адрес, письма подтверждения не уйдут | Отправитель на своём домене, SPF и DKIM |
| Не проверено подтверждение подписки | Адреса висят неактивными, рассылка не уходит | Пройти всю цепочку своим вторым адресом |
| База живёт только в сервисе | Аккаунт удаляют за неактивность — и подписчики теряются | Раз в месяц выгружать базу в CSV и хранить у себя |
Последний пункт — не теория. У меня был именно такой случай: форма стояла, аккаунт в сервисе рассылок жил своей жизнью, и однажды его удалили за неактивность вместе со всей базой. Адреса, собранные за месяцы, восстановить не удалось. Поэтому выгрузка базы — такое же обязательное дело, как бэкап сайта, и делать её стоит в тот же день месяца, что и бэкап.
Маркировка: если в письме или форме реклама
Если рассылка содержит рекламу чужого продукта — партнёрскую ссылку, оплаченное упоминание, баннер, — это интернет-реклама: нужны пометка «Реклама», название рекламодателя и код erid на конкретный креатив, а сама ссылка идёт с атрибутами rel=»nofollow sponsored noopener». Всё это читатель видит до клика. Если выпуск про ваши собственные материалы, маркировка не нужна.
И вторая часть, про которую вспоминают в последний момент: рядом с кнопкой подписки — согласие на обработку персональных данных, а в каждом письме — понятная отписка в один клик. Отвечает за это владелец сайта, а не сервис рассылок.
Что в итоге
Для блога рабочий порядок такой: список и отправитель в кабинете Unisender, форма в разделе «Инструменты → Формы», встроенный тип и JS-код, вставка в конец статей через дочернюю тему или файл в mu-plugins, проверка подписки своим вторым адресом. Если нужны несколько точек сбора или свой дизайн — не вставляйте код в четырёх местах, а сделайте один обработчик и работайте через API.
Официального плагина Unisender в каталоге WordPress нет — там только сторонние коннекторы, поэтому установка всегда идёт через код или API; об этом полезно помнить, выбирая сервис. Как устроены формы у другого сервиса, я разбирал в статье форма подписки SendSay на WordPress, а про лид-магниты, письма и ритм рассылки — рассылка для блога: первые 100 подписчиков. Если форма будет грузить лишние скрипты на всех страницах, поможет разбор как ускорить WordPress без программиста, а посчитать подписки из поиска — 12 настроек Вебмастера и Метрики.
Новые статьи на почту
Одно письмо, когда выходит новая статья: разборы сервисов Яндекса, партнёрских программ и нейросетей. Без спама, отписка в один клик.
Нажимая кнопку, вы соглашаетесь с обработкой персональных данных.
Есть вопрос или свой опыт по теме? Напишите в комментариях — читаю и отвечаю каждому.