Нашёл в нете такую статью -
Скрипт для монетизации укр. трафика после блокировок
В мае после блокировки Яндекса в Украине перестали грузиться все блоки РСЯ. То есть, даже если сайт не просел в посещаемости, проседала точно монетизация, так как ни один юзер с Украины не видел рекламу. Сейчас (спустя 2 месяца) в Яше, вроде как, исправили проблему, но все сочные рекламодатели с украинского РСЯ ушли. Решения два:

1. Ставить Adsense для всего трафика
Поначалу мы так и сделали, но после недели экспериментов увидели, что кое-где AdSense не дотягивает по эффективности. Вернули обратно РСЯ. Тем не менее, проблема осталась. Весь украинский трафик отсеивался при монетизации

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

Схема работы следующая:

По умолчанию на сайте стоит реклама РСЯ
Подключаем сервис, который определяет регион пользователя
Если пользователь заходит с Украины, выводим ему рекламу AdSense. Если любой другой регион — дефолтную РСЯ
Определение местополежения юзера идет через сервис http://ipinfo.io. У них есть ограничение на 1000 бесплатных запросов в 24 часа. Можно купить платный доступ, но для контентных проектов получается дорого. Мы у себя поставили просто в случае ошибки выводить РСЯ.

Другими словами, если у вас на сайте меньше 1000 просмотров/сутки — проблем не будет вообще. Если 2000 — определение будет работать до обеда, а после израсходования лимита — стандартная реклама РСЯ всем. Так или иначе, хотя бы половину дня вы украинский трафик сможете монетизировать

Скриптом делюсь бесплатно, можете поставить на свои ресурсы.

Код: Выделить всё

Эту часть прописываем внутри тега <head></head>
/ Функиция которая читает и записывает в куки
<script>
    function checkCountry() {
        var country = $.cookie("ad_country");
        if ( country === undefined || country === "error" ) {
            $.jsonp({
                    type: "GET",
                    url: "http://ipinfo.io",
                    callbackParameter: 'callback',
                    dataType: "jsonp",
                    timeout: 10000,
                    success: function(json){
                        $.cookie("ad_country", json.country, {expires: 7} );
                    },
                    error: function(){
                        $.cookie("ad_country", "error", {expires: 7} );
                    }
            });
        }
        return country;         
    };
</script>
Эту — вставляем в нужное место страницы (туда, где будет выводиться реклама). Не забывайте заменить РСЯ и AdSense рекламу на свою

Код: Выделить всё

// Блок с рекламой (заменить РСЯ и AdSense части на свои коды)
                    <div class="choseCountry_block">
                        <div class="ad-wrap" style="display: block!important;height: 0;overflow: hidden;">                        
                            <p><!--РСЯ-->
                                <script type="text/javascript">
                                yandex_partner_id = 392821;
                                yandex_site_bg_color = 'FFFFFF';
                                yandex_ad_format = 'direct';
                                yandex_font_size = 1;
                                yandex_direct_type = 'vertical';
                                yandex_direct_border_type = 'block';
                                yandex_direct_limit = 3;
                                yandex_direct_title_font_size = 2;
                                yandex_direct_links_underline = false;
                                yandex_direct_header_bg_color = 'FFFFFF';
                                yandex_direct_border_color = 'FFFFFF';
                                yandex_direct_title_color = 'cc0066';
                                yandex_direct_url_color = '000000';
                                yandex_direct_text_color = '000000';
                                yandex_direct_hover_color = '3399FF';
                                yandex_direct_favicon = true;
                                yandex_no_sitelinks = true;
                                document.write('<scr'+'ipt type="text/javascript" src="//an.yandex.ru/system/context.js"></scr'+'ipt>');
                                </script>
                                <!--/РСЯ-->
                            </p>
                        </div>
                        <!--AdSense код-->
                        <script>
                            $(document).ready(function() {
                                console.log(checkCountry());
                                if (checkCountry() === "UA") {
                                    $('.choseCountry_block').html('<scr'+'ipt async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></scr'+'ipt><ins class="adsbygoogle" style="display:inline-block;width:580px;height:400px" data-ad-client="ca-pub-47435749823948239" data-ad-slot="484948329423"></ins><script>(adsbygoogle = window.adsbygoogle || []).push({});</scr'+'ipt>');
                                } else {
                                    $('.choseCountry_block .ad-wrap').css('height', '100%');
                                }
                            });
                        </script>
                        <!--/AdSense код-->
                    </div>
Как вставить эти скрипты то дело понятное.
Застопорился на - Подключаем сервис, который определяет регион пользователя
Зарегестрировался на сайте http://ipinfo.io. получил ключ, как установить и настроить их расширение мозги не понимают.
Страница расширения - https://github.com/ipinfo/php
Кто то может подробно рассказать шо и как делать ?
Комментарии: 1

romaamor 20 авг 2019, 15:17 Сообщение

Решил эту проблему по другому. Нашёл сайт с такими функциями - realbig.media
  • 0

Похожие темы