Реклама в доме не отображается

У меня отлично работают объявления AdSense, но я пытаюсь создать «Домашнее объявление» (House Ad). Я ввёл код объявления в плагин, и он «заменил» код AdSense (по крайней мере, код AdSense исчез), но Домашнее объявление не появляется.

Есть какие-нибудь идеи? Дополнительно: я хочу запускать только Домашние объявления, чтобы заменить Google.

Поддерживаются ли коды объявлений на JavaScript и в iFrame? Какой из них рекомендуется?

Скорее всего, CSP блокирует ваш код для внутренней рекламы.

Добавили ли вы домены в script-src?

Я уже отключил CSP, чтобы разрешить работу рекламы AdSense.

Вы добавили домены в script-src?

У меня такого не было. Подскажите, пожалуйста, как это сделать?

Если вы отключили CSP, то этот пункт к вам не относится.

Вы пробовали открыть консоль разработчика (F12), чтобы проверить, правильно ли загружаются коды рекламы?

У меня тоже возникла эта проблема. Судя по данным в консоли разработчика, я вижу только следующее:

Кроме того, у меня несколько раз появлялось сообщение: «DevTools failed to load SourceMap Could not load content for bla bla bla: HTTP error: status code 404, net::ERR_HTTP_RESPONSE_CODE_FAILURE» для некоторых из моих официальных плагинов.

Однако это проблема в Chrome DevTools: https://superuser.com/questions/1523427/google-chrome-devtools-failed-to-parse-sourcemap-chrome-extension/1523842#1523842?newreg=c27cfa9dda0842d69df44e53ec42dfc2

Простой способ воспроизвести проблему для любого разработчика, читающего это. Просто добавьте этот скрипт в House Ads и посмотрите, появится ли он:

<script id="tcg-a2"
    data-affcode="DuelistsUnite"
    data-width="728"
    data-height="90"
    data-category-id="2"
    data-campaign="affiliate"
    data-source="DuelistsUnite"
    data-medium="DuelistsUnite"
    src="https://content.tcg20life.com/tcgafa.js" async>
</script>

С самим скриптом всё в порядке. Это рекламный баннер партнёрской программы, и он должен отображаться на любом обычном HTML-сайте. Что-то в самом Discourse блокирует его.

bug

Кстати, @AntiMetaman

Мы используем все теги IFRAME, чтобы избежать «хорошо задокументированных проблем» с тегами JavaScript и Ember.

Вы можете найти больше информации в Google, если интересно, @AntiMetaman

Надеемся, это хоть немного поможет вам.

Metro 2033

Спасибо, решение с iframe сработало как по волшебству. Нужно только убедиться, что используются атрибуты frameBorder=“0” и scrolling=“no”.

То есть House Ads в таком случае бесполезны?

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

Работало отлично…

Ладно, тогда бесполезно. :wink:

Я совсем не считаю это «бесполезным». Например, я использовал много кода из оригинального плагина, модифицировал его и применил все точки подключения плагина (hook locations).

Фактически, именно часть плагина, связанная с «домом» (house), послужила основой для тегов нашего рекламного сервера Revive.

В общем, я считаю, что часть кода плагина, отвечающая за «дом», была очень полезной, @AntiMetaman, и именно этот код лег в основу всей моей модификации плагина для создания «плагина рекламного сервера Discourse для рекламного сервера Revive».

Я вижу, что это не было бесполезным для вас, поскольку вы создали собственный «revive ad server». Однако для меня это бесполезно, если я не могу отображать рекламный блок партнёрской сети через House Ads, что, как я полагаю, и является их первоначальным назначением. Вы посоветовали мне использовать iframe, и это сработало. Вот почему я сказал, что это бесполезно для меня. Я уверен, что другие находят это полезным для других целей, например, для реверс-инжиниринга нового плагина.

Понял.

Как вы обнаружили, теги SCRIPT (JavaScript) не отображаются как «внутренние рекламные блоки» из-за некоторых ограничений Ember.

Однако вы должны иметь возможность отображать любые теги IFRAME или HTML в качестве «внутреннего рекламного блока», поскольку «внутренний рекламный блок» — это просто слот для запуска ваших собственных тегов (при условии, что это теги HTML или IFRAME).

Надеюсь, это поможет.

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

Верно (в основном).

В таком случае вы можете легко сделать как хотите: просто добавить тег IFRAME в конец страницы; либо модифицировать плагин, чтобы добавить ещё один слот для «домашней рекламы», в соответствии с вашим собственным дизайном размещения объявлений.

В любом случае, рад, что тег IFRAME с прямой вставкой работает у вас. Это главное.

@neounix, вам интересно поддерживать плагин https://github.com/unixneo/neo-revive-discourse? Если да, я могу создать задание на маркетплейсе.

Возникает ли какой-либо конфликт между встроенными внутренними объявлениями (House Ads) и плагином «Реклама», из-за которого внутренние объявления не отображаются в зоне «Верхние объявления» списка тем, когда в том же месте размещена зона DFP? Разве не должны отображаться оба объявления — одно от House Ads и одно от DFP?

Я заметил, что iframe Google в списке тем появляется при нажатии F12 — он присутствует независимо от того, введен ли идентификатор издателя DFP в разделе DFP плагина «Реклама».

Я хотел бы полностью отказаться от использования DFP и управлять рекламой исключительно через House Ads.