Справка

Создание блока

Для создания InPage блока:

  1. Выберите сайт → нажмите «Добавить блок».
  2. Проверьте, что выбрана корректная площадка. 
  3. При необходимости измените название блока. 
  4. Дисплейный блок → выберите размер блока «inPage».
  5. Задайте настройки блока (тип интеграции, порог CPM и др.)
  6. Нажмите «Создать». 

Размер контейнера для формата InPage

Для десктопов:

  • Минимум: 256×144 пикселей (соотношение 16:9)
  • Рекомендуемый размер: 400×256 пикселей. Обеспечивает оптимальное качество отображения и подгрузку рекламы. 

Для мобильных устройств:

Минимум: 340×255 пикселей (соотношение 4:3) 

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

Интеграция кода

После создания блока, переходим к интеграции. Есть 2 основных способа:

  1. Прямая интеграция — когда код блока устанавливается напрямую в верстку сайта.
  2. Header Bidding — когда код блока вызывается через стороннюю систему AdFox. 

Ниже рассмотрим каждый из методов интеграции.

Прямая интеграция

Для подключения плеера рекламы на сайт предусмотрено 2 метода: базовый и расширенный. Оба варианта размещаются перед закрывающим тегом </body> на странице.

Базовый метод

Быстрый способ вставки плеера — подходит, если у вас только один рекламный блок на странице и не требуется отладка или колбэки.

Пример кода:

<script async src="https://ad.mail.ru/static/vk-adman.js?slot=slot_id_int&container=selector.class or #id"></script>

Что означают параметры: 

  • slot — ID рекламного слота (получается в рекламном кабинете). Обязателен.
  • container — CSS-селектор контейнера, в который будет вставлен плеер (например, класс .main-content).

Если container не указан, плеер будет искать контейнер с id="adman-ads". Если такого нет, не загрузится.

Пример контейнера:

<div id="adman-ads"></div>

Расширенный метод

Нужен, если:

  • планируется несколько плееров на странице
  • требуется гибкая настройка
  • вы хотите отследить, если плеер не загрузился
  • вы не владелец площадки (например, агрегатор или реселлер)

Шаг 1: Инициализация SDK

<script type="text/javascript">
       (function(a, b, c, d, e, f, g, h) {
               g = b.createElement(c);
               g.src = d;
               g.async = !0;
               h = b.getElementsByTagName(c)[0];
               h.parentNode.insertBefore(g, h);
               const func = function() {
                       this.push(Array.prototype.slice.apply(arguments));
               };
               for (let i = f.length; i--;) {
                       a[e[i]] = func.bind(a[f[i]] = []);
               }
       })(window, document, "script", "https://ad.mail.ru/static/vk-adman.js",
               ["AdManPlayer", "AdManSDK"],
               ["_AdManPlayerInit", "_AdManSDKInit"]);
</script>

Шаг 2: Вставка плеера

<div id="main-content"></div>
<script>
       AdManPlayer({
               container: 'main-content', // ID контейнера
               slot: slot_id_int, // ваш slot ID
               onError: (err) => {
                       console.warn("Реклама не загрузилась:", err);
                       document.getElementById('main-content').style.display = 'none';
               }
       });
</script>

Код целиком 

<script type="text/javascript">
       (function(a, b, c, d, e, f, g, h) {
               g = b.createElement(c);
               g.src = d;
               g.async = !0;
               h = b.getElementsByTagName(c)[0];
               h.parentNode.insertBefore(g, h);
               const func = function() {
                       this.push(Array.prototype.slice.apply(arguments));
               };
               for (let i = f.length; i--;) {
                       a[e[i]] = func.bind(a[f[i]] = []);
               }
       })(window, document, "script", "https://ad.mail.ru/static/vk-adman.js",
               ["AdManPlayer", "AdManSDK"],
               ["_AdManPlayerInit", "_AdManSDKInit"]);
</script>

<div id="main-content"></div>
<script>
       AdManPlayer({
               container: 'main-content', // ID контейнера
               slot: slot_id_int, // ваш slot ID
               params: {
                       dl: window.location.href // ОБЯЗАТЕЛЬНО: ссылка на текущую страницу
               },
               onError: (err) => {
                       console.warn("Реклама не загрузилась:", err);
                       document.getElementById('main-content').style.display = 'none';
               }
       });
</script>

Зачем нужен параметр dl:

  • Этот параметр сообщает системе, где показывается реклама.
  • Обязателен для всех, кто не является владельцем сайта.
  • Без него показ может не засчитаться, а трафик — ограничиться (троттлинг).

Режим отладки (debug)

Чтобы протестировать работу плеера, можно включить debug-режим:

<script>
      AdManPlayer({
              container: '.post_text',
              slot: slot_id_int,
              debug: true,
              visit: {
                      // пример ответа сервера
              },
              onError: () => {
                      console.warn("Ошибка загрузки плеера");
              }
      });
</script>

После проверки — удалите параметры debug и visit.

Несколько плееров на странице

Если на странице размещается больше одного рекламного блока, достаточно инициализировать SDK один раз, а далее просто вызывать AdManPlayer() столько раз, сколько нужно.

Конфигурация плеера

Описание параметров плеера, доступных в расширенном режиме:

container
string | string[]
css селектор или массив селекторов элемента, куда должен быть помещен плеер. Может указывать на родительский блок с параграфами (при встраивании в тело статьи), либо на конкретный пустой блок (если важно поместить плеер именно в указанное место).

offset
number
Желаемый отступ в статье в процентах, куда будет вставлен плеер. Алгоритм выберет место между абзацами, следующими за первым видимым экраном.
По умолчанию: 50

slot
string
Индивидуальный номер слота площадки. Используйте этот параметр, чтобы показывать все кампании, к которым подключена площадка.

debug
boolean
Позволяет показывать тестовый креатив, переданный в параметре visit
По умолчанию: false

visit
object
Параметр, откуда плеер берет тестовый креатив при использовании debug:true

params
object
пример: params: { preview: 4 },
Добавляет query string параметры в запрос к слоту

iframe
boolean
Оборачивает плеер в iframe (т.к. плеер общается с загрузчиком креативов через window.postMessage, может возникнуть ситуация, когда это общение будет нарушено. В таких случаях стоит попробовать включить этот параметр).

controls
object | boolean
примеры:controls: { progressBar: true, skip: true, volume: true, cta: true, replay: true }
controls: false
Отвечает за включение/отключение стандартных элементов управления плеером. По умолчанию true
Состоит из progressBar, skip, volume, cta, replay

Колбэки

  • 1
    onReady (function)Срабатывает при готовности плеера к воспроизведению.
  • 2
    onError (function)Срабатывает, если видео не загрузилось по каким-либо причинам, включая случай, когда нет креатива для показа. Функция передаёт аргумент c текстом ошибки.
  • 3
    onStarted (function)Срабатывает при первом старте видео.
  • 4
    onPlayed (function)Срабатывает при воспроизведении видео.
  • 5
    onPaused (function)Срабатывает при приостановке воспроизведения видео (SDK).
  • 6
    onClosed (function)Срабатывает при закрытии видеоблока (SDK).
  • 7
    onCompleted (function)Срабатывает, если пользователь просмотрел видео полностью.
  • 8
    onClicked (function)Срабатывает, если пользователь перешёл по ссылке.
  • 9
    onSkipped (function)Срабатывает, если пользователь нажал «Пропустить видео».

Пример кода с установленными колбэками: 

AdManPlayer({
      container: '.post',
      slot: '690',
      onError: (e) => {
              console.log('AdMan error:', e)
      },
      onReady: () => {
              console.log('AdMan ready')
      },
      onClicked: () => {
              console.log('AdMan clicked')
      },
      onCompleted: () => {
              console.log('AdMan completed')
      },
})

События и возможные ошибки Adman3

С кодами событий и ошибок Adman3 можете ознакомиться в этой статье 

Интеграция через Adfox Header Bidding

Чтобы подключить рекламный блок inPage через Header Bidding в Adfox, выполните следующие шаги:

1. Создание кампании с внешним монетизатором

Если у вас ещё не создана кампания с внешним монетизатором myTarget, создайте её:

  • Рекламодатель: RSYaAdvertiser
  • Внешний монетизатор: mytarget
  • Тип CPM: header_bidding

2. Настройка рекламной кампании

Рекламные кампании → Баннеры

Создайте баннер со следующими параметрами:

  • Тип: hbid
  • Шаблон: Header Bidding Mytarget [context]

3. Настройка площадки

  • Сайты – создайте новый сайт или используйте уже существующий.
  • Сайты → Разделы – добавьте нужный раздел сайта.
  • Сайты → Разделы → Площадки – создайте площадку с типом баннера hbid.
  • Сайты → Разделы → Площадки → Код вставки – получите код вставки.

В полученном коде нужно вручную изменить параметр: codeType: 'inpage'

Если используется комбинированный формат (баннер + видео): codeType: 'combo'

4. Размеры контейнера

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

Пример того, как должно быть
Пример того, как должно быть
1 из 2
Пример того, как должно быть