Пошаговая настройка Observer для РСЯ в коде вызова рекламных блоков

Как я использую Observer для улучшения рекламы на моём сайте

Когда я начал размещать рекламу через Рекламную сеть Яндекса (РСЯ), мне сразу стало ясно, что важен баланс: с одной стороны, объявления должны быть заметными, чтобы приносить доход, а с другой — они не должны раздражать пользователей.

Объявления, которые мешают навигации или закрывают значительную часть экрана, могут оттолкнуть посетителей. Именно поэтому я решил интегрировать функцию Observer.

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

Почему Observer так важен

Observer — это простой и эффективный способ управлять рекламой, который помогает улучшить пользовательский опыт и избежать конфликтов с правилами РСЯ.

Представьте ситуацию: ваш посетитель открывает страницу и видит рекламу внизу экрана (Floor Ad). Но как только он прокручивает статью наполовину, появляется лента объявлений.

Чтобы экран не заполнился баннерами, Observer автоматически убирает нижнюю рекламу, освобождая место для нового формата.

Это решение не только делает сайт более удобным, но и позволяет соблюдать правила Рекламной сети Яндекса. Согласно этим правилам, одновременный показ некоторых рекламных форматов, например, Floor Ad и Top Ad вместе с лентой, запрещён.

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

Функция Observer помогает решить несколько ключевых задач:

  • Настройка правильного показа объявлений. Она обеспечивает своевременную замену одного рекламного формата другим в зависимости от поведения пользователя.
  • Оптимизация доходов. Пользователи охотнее взаимодействуют с ненавязчивой рекламой, что увеличивает кликабельность и доход.
  • Автоматизация управления рекламными блоками. Это снижает нагрузку на разработчиков и вебмастеров, так как функция работает в фоновом режиме.

Как я интегрировал Observer на свой сайт

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

Я разделил весь процесс на несколько шагов:

  1. onClose
    Эта функция помогает отслеживать момент, когда пользователь закрывает рекламный блок. Например, после закрытия Floor Ad можно показать другой рекламный формат. Это удобно для управления очередью объявлений.
  2. onError
    С помощью этой функции я могу фиксировать ошибки в работе рекламы. Она позволяет узнать, если рекламный блок не загрузился или возникли другие проблемы. Это помогает оперативно вносить изменения в код.
  3. onRender
    Эта функция сообщает, какие объявления были отрисованы: медийные или объявления Директа. С её помощью я провожу анализ эффективности различных форматов рекламы.

Вот пример кода, который я использую для управления рекламой:

Ya.Context.AdvManager.render({
    onClose: function() {
        console.log("Реклама закрыта");
        // Здесь можно добавить логику для показа нового блока
    },
    onError: function(error) {
        console.error("Ошибка рекламы:", error.text);
    },
    onRender: function(data) {
        console.log("Отрисована реклама:", data.product);
    }
});

Благодаря этим настройкам я смог не только улучшить пользовательский опыт с рекламой, но и повысить эффективность размещения.

Реклама стала менее навязчивой, а пользователи дольше остаются на сайте, что положительно сказывается на доходах.

Пошаговая настройка Observer для РСЯ в коде вызова рекламных блоков
    <div id="yandex_rtb_R-A-588461-101"></div>
    <script>
    window.yaContextCb.push(() => {
            Ya.Context.AdvManager.renderFeed({
                    blockId: 'R-A-588461-101',
                    renderTo: 'yandex_rtb_R-A-588461-101'
            })
    })
    window.yaContextCb.push(() => {
            Ya.Context.AdvManager.render({
                    "blockId": 'R-A-588461-98',
                    "type": "тип рекламного блока", // topAd или floorAd
                    "platform": "touch"
            })
    })
    window.yaContextCb.push(() => {
            Ya.Context.AdvManager.render({
                    "blockId": "R-A-588461-109",
                    "type": "тип рекламного блока", // topAd или floorAd
                    "platform": "desktop"
            })
    })
    const feed = document.getElementById('yandex_rtb_R-A-588461-101'); // ID из поля renderTo
    const callback = (entries) => {
            entries.forEach((entry) => {
                    if (entry.isIntersecting) {
                            Ya.Context.AdvManager.destroy({
                                            blockId: 'R-A-588461-98'
                                    }), // blockId для мобильной версии
                                    Ya.Context.AdvManager.destroy({
                                            blockId: 'R-A-588461-109'
                                    }); // blockId для десктопной версии
                    }
            });
    };
    const observer = new IntersectionObserver(callback, {
            threshold: 0,
    });
    observer.observe(feed);
    </script>

Как я справляюсь с проблемами показа рекламы

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

  1. Проверка обновлений кода.
    Если вы недавно внесли изменения в рекламный код, стоит помнить, что краулерам Яндекса требуется время на индексацию. Пока это не произойдёт, реклама может временно не показываться.
  2. Проверка правильности JavaScript-кода.
    Часто ошибки в коде возникают из-за неправильного форматирования или обрезанных строк. Я всегда перепроверяю, чтобы код был вставлен корректно.
  3. Анализ файла robots.txt.
    Этот файл отвечает за индексацию страниц. Если случайно закрыть нужные разделы для краулеров, реклама может не отображаться.
  4. Наличие текстового контента на странице.
    РСЯ подбирает рекламу на основе контекста, поэтому важно, чтобы на страницах был релевантный текст. Если его недостаточно или он скрыт от индексации, объявления не будут показываться.

Эти шаги помогли мне быстро находить и устранять проблемы, чтобы не терять доход от рекламы.

Функция Observer стала для меня настоящим открытием.

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

Благодаря Observer я могу быть уверен, что реклама соответствует правилам РСЯ, а мои доходы остаются стабильными.

Я также заметил, что пользователи стали дольше оставаться на сайте. Это связано с тем, что ненавязчивая реклама вызывает меньше раздражения.

Интеграция Observer — это не просто способ автоматизации, но и метод повышения кликабельности объявлений.

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

Если у вас возникли вопросы о том, как настроить рекламу в РСЯ правильно или как улучшить пользовательский опыт с рекламой, делитесь ими в комментариях.

Буду рад поделиться своим опытом и узнать о вашем!

Ознакомьтесь с 5 лучшими недавно опубликованными статьями