Как создать popup с отсроченным запуском и отслеживанием активности пользователя в WordPress

Работа с popup в WordPress — это один из эффективных способов повышения вовлечённости и конверсии на сайте. Часто нужно показывать всплывающее окно не сразу при загрузке страницы, а с задержкой и только когда пользователь проявляет определённую активность. В этой статье рассмотрим, как реализовать popup с отсроченным запуском и отслеживанием активности пользователя на WordPress-сайте с помощью кода и популярных плагинов.

Почему важен отсроченный запуск popup и отслеживание активности

Мгновенный показ popup при загрузке страницы часто раздражает посетителей и увеличивает показатель отказов. Отсроченный запуск позволяет дать пользователю время ознакомиться с контентом, а затем аккуратно предложить дополнительную информацию или подписку. Отслеживание активности пользователя (например, движение мыши, прокрутка страницы, клики) помогает показывать popup только заинтересованным, что повышает эффективность и снижает навязчивость.

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

Выбор плагина для создания popup с отсрочкой и активностью

Существует множество плагинов для работы с popup. Для нашей задачи важны функции отсрочки показа и отслеживания активности пользователя. Рассмотрим два популярных варианта:

  • My Popup — лёгкий и удобный плагин, который поддерживает настройку задержки показа и условия по активности пользователя. Имеет понятный интерфейс и хорошо подходит для большинства случаев.
  • Popup Maker — мощный плагин с расширенными возможностями по триггерам показа и условиям, в том числе по пользовательской активности и времени.

Для примера реализации ниже используем My Popup, так как он прост в настройке и интеграции с кодом.

Как настроить popup с отсроченным запуском в My Popup

После установки и активации плагина My Popup:

  1. Перейдите в My Popup > Добавить новый.
  2. Создайте контент всплывающего окна — это может быть форма подписки, сообщение или любой HTML.
  3. В настройках показа укажите задержку в секундах — например, 10 секунд.
  4. В разделе триггеров выберите «Показать при активности пользователя» — например, движение мыши или прокрутка.
  5. Сохраните popup и разместите его на нужных страницах через шорткод или автоматический показ.

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

Пример реализации отсроченного popup с отслеживанием активности на чистом JavaScript для WordPress

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

function wppopup_showPopup() {
  if(document.getElementById('wppopup')) return; // Popup уже показан
  const popup = document.createElement('div');
  popup.id = 'wppopup';
  popup.style.position = 'fixed';
  popup.style.width = '300px';
  popup.style.height = '200px';
  popup.style.top = '50%';
  popup.style.left = '50%';
  popup.style.transform = 'translate(-50%, -50%)';
  popup.style.background = '#fff';
  popup.style.boxShadow = '0 0 10px rgba(0,0,0,0.3)';
  popup.style.padding = '20px';
  popup.style.zIndex = 9999;
  popup.innerHTML = `
    <h3>Подпишитесь на рассылку</h3>
    <form id='wppopup-form'>
      <input type='email' placeholder='Ваш email' required style='width: 100%; padding: 8px; margin-bottom: 10px;'>
      <button type='submit' style='width: 100%; padding: 8px;'>Отправить</button>
    </form>
    <button id='wppopup-close' style='position: absolute; top: 5px; right: 10px; background: transparent; border: none; font-size: 18px; cursor: pointer;'>×</button>
  `;
  document.body.appendChild(popup);
  document.getElementById('wppopup-close').onclick = function() {
    document.body.removeChild(popup);
    localStorage.setItem('wppopup_closed', 'yes');
  };
  document.getElementById('wppopup-form').onsubmit = function(e) {
    e.preventDefault();
    alert('Спасибо за подписку!');
    document.body.removeChild(popup);
    localStorage.setItem('wppopup_closed', 'yes');
  };
}

function wppopup_init() {
  if(localStorage.getItem('wppopup_closed') === 'yes') return; // Уже закрывали

  let popupShown = false;
  // Запускаем таймер отсрочки 10 сек
  setTimeout(() => {
    function onActivity() {
      if(!popupShown) {
        wppopup_showPopup();
        popupShown = true;
        window.removeEventListener('mousemove', onActivity);
        window.removeEventListener('scroll', onActivity);
      }
    }
    // Слушаем активность пользователя
    window.addEventListener('mousemove', onActivity);
    window.addEventListener('scroll', onActivity);
  }, 10000);
}

document.addEventListener('DOMContentLoaded', wppopup_init);

Этот скрипт покажет popup через 10 секунд после загрузки страницы, но только если пользователь двинет мышь или прокрутит страницу. После закрытия popup больше не показывается за счёт записи в localStorage.

Расширение функционала: интеграция с плагином WP Remark для сбора аналитики

Для анализа эффективности popup полезно отслеживать конверсии и поведение пользователей. Плагин WP Remark позволяет собирать такую аналитику и интегрируется с popup.

Чтобы связать кастомный popup с WP Remark, добавьте в обработчик отправки формы вызов функции для фиксации события:

document.getElementById('wppopup-form').onsubmit = function(e) {
  e.preventDefault();
  if(typeof wpshopRemarkEvent === 'function') {
    wpshopRemarkEvent('popup_subscribe');
  }
  alert('Спасибо за подписку!');
  document.body.removeChild(document.getElementById('wppopup'));
  localStorage.setItem('wppopup_closed', 'yes');
};

Подробнее о WP Remark и его возможностях можно узнать на официальном сайте https://wpshop.ru/plugin/wpremark/.

Советы по UX при создании popup с задержкой и активностью

Чтобы popup действительно помогал, а не раздражал, важно соблюдать несколько правил:

  • Не показывайте popup слишком рано — минимум 5–10 секунд после загрузки.
  • Используйте отслеживание активности — только заинтересованные увидят popup.
  • Добавьте кнопку явного закрытия и возможность закрыть popup по нажатию клавиши Esc.
  • Не показывайте popup повторно, если пользователь уже его закрыл (используйте cookie или localStorage).
  • Оптимизируйте дизайн popup под мобильные устройства, чтобы не мешать навигации.

Следуя этим советам, вы повысите лояльность посетителей и эффективность маркетинговых кампаний.

Как создать popup для отключения кэширующих плагинов в WordPress
01.07.2026
Как создать автоматический popup в WordPress при входе на сайт
30.11.2025
Как удалить popup после успешного отправленного заказа в WooCommerce без перезагрузки страницы
07.05.2026
Как создать собственный шорткод для popup в WordPress
03.12.2025
Как добавить поддержку reCAPTCHA в popup WordPress для защиты от спама
19.04.2026