Организация учёта показов и переходов по внешним блокам

Введение

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

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

Ниже будет рассмотрено, как реализовать эту возможность.

Постановка задачи

На главной странице сайта, например www.example.com, в разделе классные предложения публикуются текстово-графические блоки. Каждый блок представляет собой картинку объекта из базы данных и краткое описание. По нажатию на картинку или текст происходит переход на подробную информацию по объекту.

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

Вариант решения

В данном случае AdRiver будет использоваться исключительно как счётчик. Управление ротацией предложений остается функцией сайта. Рассмотрим по шагам настройку.

Получение баннерного кода

Выберите формат баннера counter. Получите для него код. Пример для кода counter:

<!-- AdRiver code START Type: Counter Site: example PZ: 0 BN: 0-->
<script language="javascript" type="text/javascript"><!--
var RndNum4NoCash = Math.round(Math.random() * 1000000000);
var ar_Tail='unknown'; if (document.referrer) ar_Tail = escape(document.referrer);
document.write(
'<img src="http://ad.adriver.ru/cgi-bin/rle.cgi?'
+ 'sid=94499&bt=21&pz=0&rnd=' + RndNum4NoCash + '&tail256=' + ar_Tail + '" border=0 width=1 height=1>')
//--></script>
<noscript>
<img src="http://ad.adriver.ru/cgi-bin/rle.cgi?sid=94499&bt=21&pz=0&rnd=1099662970" border=0 width=1 height=1>
</noscript>
<!-- AdRiver code END -->

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

Задачу генерации случайных чисел целесообразно переложить на публикатор сайта — это позволит получить более компактный код.

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

Измените шаблон, который используется публикатором сайта для вывода информации из базы, чтобы в каждый блок информации об объекте он добавил бы код:

<div style="visibility:hidden">
<img src="http://ad.adriver.ru/cgi-bin/rle.cgi?sid=94499&bt=21&pz=0&bn=00000&rnd=1099662970" border=0 width=1 height=1>
</div>

Что изменилось по сравнению с исходным кодом:

  • вместо 00000 публикатор вставляет в параметр bn идентификатор объекта из базы
  • положили картинку в прозрачный слой, чтобы она не мешала дизайну сайта

Теперь клик. Попросим публикатор заменить код клика по ссылке из базы на редирект AdRiver. Для этого потребуется закодировать адрес исходной ссылки. Если ваш публикатор этой возможности не поддерживает, то тогда придется прибегнуть к JavaScript:

<script language="JavaScript">
<!--
var new_url=escape("сюда публикатор подставляет адрес исходной ссылки для этого объекта"); 
document.write(
'<a href="http://ad.adriver.ru/cgi-bin/click.cgi?'
+ 'sid=94499&sz=class_pred&bt=21&pz=0'
+ '&bn=00000&rnd=1099662970'
+ '&rleurl=' + new_url 
+ '" target=_top>текст ссылки</a>');
//-->
</script>

Тут также публикатор подставляет номер объекта из базы вместо 00000 в параметре bn и подставляет исходный адрес клика в escape().

Параметр rleurl говорит AdRiver, куда надо перейти после учёта клика. В таком случае заданный в интерфейсе адрес исходной ссылки для этого объекта не будет использоваться.

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

Слайсы. Баннеры. Кампания

Теперь создадим кампанию Предложения из базы. В кампанию в сценарий Дефолтные баннеры добавьте баннер counter.

Ссылку для баннера лучше поставить равной адресу сайта — http://www.example.com. Реально этот адрес использоваться никогда не будет, но хорошей практикой является всё же указывать что-нибудь осмысленное.

Теперь передайте слайс counter с зоны сайта class_pred в новую кампанию. Слайс передаём как под статическое размещение (числовой коммерческий без ограничений с максимальной скоростью открутки).

Просмотр статистики

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

Эти данные попадают в статистику сайта.

Если открыть статистику сайта, и посмотреть ее по зоне class_pred мы увидим число показов и кликов по всем блокам в совокупности. Эти же цифры будут доступны в новой кампании.

Статистику по каждому предложению можно увидеть в статистике сайта по зоне class_pred, поставив в селекторе номер баннера подробно. Будет отображена таблица для каждого идентификатора из базы — число показов и число кликов.

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