Показ рекламы Google AdSense только для посетителей Facebook и Twitter

Я использую приведенный ниже код. Когда я размещаю этот код в single.phpпоказывает рекламу с содержание. Я хочу, чтобы, когда посетитель Facebook посещал мой URL, он показывал только реклама и нет контента. Когда другие посетители обычно посещают URL, тогда он должен показывать контент.

<?php

$ref = $_SERVER['HTTP_REFERER'];
if (preg_match("(facebook)", $ref) != false) {
echo <<<END
<script type="text/javascript"><!--
google_ad_client = "xx-xx-xxxxxxxxxxxxxxxxxx";
/* xxxxxxxx xxxxxx xxx xxx xxx xx xxxxxx */
google_ad_slot = "xxxxxxxxxxxxxx";
google_ad_width = xxx;
google_ad_height = xxx;
//-->
</script>
<script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</div>
END;
}
else {
echo "";
}

?>

Если single.php это неправильное место, где я должен разместить его вместо?

-1

Решение

Пожалуйста, дайте это попробовать:

<?php

$ref = $_SERVER['HTTP_REFERER'];
if (preg_match('facebook\.com', $ref) != false) {

?>
<script type="text/javascript"><!--
google_ad_client = "xx-xx-xxxxxxxxxxxxxxxxxx";
/* xxxxxxxx xxxxxx xxx xxx xxx xx xxxxxx */
google_ad_slot = "xxxxxxxxxxxxxx";
google_ad_width = xxx;
google_ad_height = xxx;
//-->
</script>
<script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</div>
<?php

} else {
echo "";
}

?>

Другой способ проверить реферала — использовать strpos вместо preg_match,

<?php

$ref = $_SERVER['HTTP_REFERER'];
if (strpos($ref, 'facebook.com') != false) {

?>
<script type="text/javascript"><!--
google_ad_client = "xx-xx-xxxxxxxxxxxxxxxxxx";
/* xxxxxxxx xxxxxx xxx xxx xxx xx xxxxxx */
google_ad_slot = "xxxxxxxxxxxxxx";
google_ad_width = xxx;
google_ad_height = xxx;
//-->
</script>
<script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</div>
<?php

} else {
echo "";
}

?>
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector