Ротация рекламы. Как лучше всего определить, когда и какое объявление должно отображаться на странице? - PullRequest
1 голос
/ 11 марта 2009

Клиент, для которого я создаю сайт, хочет создать собственный рекламный «движок». Планируется разместить несколько объявлений на сайте и заполнить остальные с помощью Google Adsense, пока все места не будут заполнены.

Моя проблема заключается в том, как определить, какое объявление нужно озвучивать. (Предположим на данный момент, что у меня есть только 1 место размещения рекламы.) Я думал, что у меня будет стол с:

  • год
  • месяц
  • показов за месяц (0 без ограничений)
  • использованная импрессия
  • Клиенты
  • HTML-код для показа объявления

Я мог бы сделать что-то вроде, чтобы получить рекламу:

SELECT * 
FROM ad 
WHERE impressions > used_impressions 
    OR impressesions = 0 
ORDER BY RAND() 
LIMIT 1

Но, скажем, у меня есть 3 объявления:

  • 1 объявление - 5000 показов
  • 1 объявление - 5000 показов
  • Google Adsense, заполняющий список посещений сайтов

По статистике все 3 объявления будут отображаться одинаковое количество раз. К концу первой недели и 15000 просмотров на сайте первые 2 объявления должны были использовать все свои показы и оставшиеся 3+ недели месяца и больше не отображаться; будет отображаться только Google Adsense.

Как разместить рекламу, чтобы она распределялась по месяцу?

Я использую ЛАМПУ.

Ответы [ 2 ]

3 голосов
/ 11 марта 2009

Дэррил,

Я бы предложил разбить показы по дням, чтобы

1 объявление - 5000 / (monthsToDisplay / 30)

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

totalImpressions = 5000;

dailyImpressions = totalImpressions / (monthsToDisplay / 30)

Тогда вы могли бы сделать что-то вроде:

SELECT * FROM ad WHERE (totalImpressions > used_impressions AND dailyImpressions > used_dailyImpressions) OR impressesions = 0 ORDER BY RAND() LIMIT 1

Надеюсь, это имело смысл - здесь рано утром, но я проверю позже!

Берти

0 голосов
/ 29 апреля 2009

Вы говорите о технологии типа AdServing. Есть несколько способов определить, какое объявление следует показывать.

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

«Даже полет» не должен быть реализован сам по себе. Сначала вы должны реализовать «Ограничение частоты». Это означает, что одно и то же объявление не показывается одному и тому же лицу более определенного количества раз. Например, если пользователь не нажимает на объявление после 5 раз его просмотра, он просто не собирается нажимать. В этом случае вам следует подать еще одно объявление.

Комбинируя этот метод, вы определяете, сколько показов нужно обслуживать в течение дня ... затем для каждого пользователя .. определить, сколько раз пользователь видел объявление. Если они имеют право увидеть это снова, то покажите это .. иначе .. покажите adsense.

Однако вам лучше предложить бесплатный рекламный сервер, такой как Google Ad Manager или OpenX. Они уже решили все эти проблемы, и нет смысла заново изобретать колесо.

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