Вопрос

У меня есть <div> в нем содержится реклама Google.Мой веб-сайт в основном работает на AJAX, и нет необходимости обновлять браузер.Это означает, что мои объявления также не будут обновляться, что не идеально, когда пользователь целый день смотрит на одно объявление.

Поэтому мне нужен был способ обновить определенный <div> на странице.Я нашел много решений, но они не сработали.Например, с помощью html-функции jQuery:

$("#ads").html("google ad script here");

Этому удалось обновить всю страницу, не представляю, как.Я также могу отправить AJAX-запрос на HTML-страницу, содержащую рекламу Google, но я предполагаю, что это будет иметь тот же эффект, что и описанная выше попытка.

Я не хочу использовать iFrames.

Есть ли у меня какой-нибудь другой вариант?Мой гороховый мозг больше не может думать.:)

Редактировать:

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

Ярким примером является Yahoo Mail - их новый почтовый ящик AJAX использует тот же метод, когда пользователь нажимает на ссылку, после чего показывается новое объявление.

Это было полезно?

Решение

Как указано в обоих ответах, автоматическое обновление объявлений AdSense запрещено. Я понимаю, что вы намереваетесь обновить объявление только в ответ на действия пользователя, но оно все же не разрешено, даже если так и должно быть!

Помните, причина, по которой вы хотите обновить рекламные объявления, заключается в том, что вы можете показывать новые. Отображение рекламы называется & Quot; impression. & Quot; Когда вы используете код для обновления объявлений, вы автоматически генерируете показы объявлений.

Правила программы AdSense (выделено мной):

  

Недействительные клики и показы

     

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

Обновление вашей рекламы является нарушением буквы правила против создания показов. С учетом сказанного, я думаю, что любой разумный человек согласится с тем, что обновление рекламы в приложении AJAX в ответ на поведение пользователя (например, в ответ на щелчок) не является нарушением духа правила.

Например, представьте, что переписываете все свое приложение, чтобы прекратить использовать AJAX. Это явно хуже для ваших пользователей (медленнее, страница мигает при каждом нажатии, страница не может динамически обновляться в фоновом режиме), но с технической точки зрения это не является нарушением правил программы AdSense.

Ясно, что Google имел в виду запретить автоматическую замену рекламных объявлений каждые пять секунд (создавая " слайд-шоу " рекламных объявлений). Google также хотел запретить делать ваш сайт более привлекательным для рекламодателей, так как количество посещений превышает количество ваших посещений. Я уверен, что они не собирались помешать вам создать высокопроизводительный веб-сайт AJAX ... но, к сожалению, иногда правила имеют непредвиденные последствия.

Конечно, как вы изначально указали, вы МОЖЕТЕ обновить свои рекламные объявления, если вы вставите их в iframe и измените их местоположение. ( Вот как использовать iframes в приложении AJAX для обновления AdSense .)

Вы отклонили iframes в своем первоначальном вопросе, возможно, потому, что знали, что использование iframes нарушит политику Google ... но если вы настаиваете на нарушении правил, вы могли бы нарушить их полностью! ; -)

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

Другие советы

Новые "теги" Google DFP, в частности, позволяют "обновлять рекламу для AJAX"

обновить

pubService.обновить (слоты) Обновляет указанный массив слотов на странице новыми объявлениями.

Параметры:

массив слотов - Необязательный массив слотов для обновления.Если они не указаны, все рекламные слоты обновляются.Пример:

var slot1 = googletag.defineUnit("/1234567/таблица лидеров", [728, 90], "div-1").AddService(googletag.pubads());

var slot2 = googletag.defineUnit("/1234567/небоскреб", [160, 600], "div-2").AddService(googletag.pubads());

// Вызов refresh выводит новое объявление для каждого слота

googletag.pubads().обновить([слот 1, слот 2]); http://support.google.com/dfp_sb/bin/answer.py?hl=en&answer=2372721&expand=pubservice_details#refresh

Я знаю, что я полтора года опаздываю на вечеринку, но ... Возможно, проблема с рекламой в том, что они используют document.write (рекламные серверы печально известны этим, но я не не знаю, использует ли его AdSense или нет.)

Если это так, у меня есть библиотека, которая может помочь: writeCapture.js . Пример:

$('#ads').writeCapture().html('<script src="whatever-your-adsense-code-is"> </script>');

Это использует jQuery, но есть и отдельная версия.

Что касается нарушения TOS ... Gmail динамически меняет рекламу, поэтому все не так плохо. Пока контент меняется, я думаю, что все в порядке.

Вы можете обновить рекламные места Google следующим кодом. Поместите это в функцию JS, которую вы хотите обновить рекламу. Это должно обновить все объявления на странице.

if ( undefined !== googletag ) {
  googletag.pubads().refresh();
}

Справка Менеджера объявлений Google - загрузка объявлений без обновления страницы

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

если я загружу файл Read.inc, в котором есть контент и реклама Нажмите что-нибудь на странице, и вы попадете на сайт Make.inc, в котором есть реклама и реклама.

Что не так с этим? Это органично. Одна загрузка с рекламой как частью содержания.

Это то же самое, что щелкнуть ссылку.

На самом деле я еще не пробовал, но это, конечно, кажется логичным.

Запрещено (согласно условиям AdSense) пытаться перезагрузить рекламу в течение жизненного цикла страницы. Кроме того, это вряд ли возможно (благодаря архитектуре платформы).

Это не разрешено. но я думаю, что вы можете использовать для этого iframe. Я видел хорошие уроки этого. Я попытался сделать это с помощью ajax, откатив свои изменения для AdSense TOS

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top