Украина и Яндекс


В связи с тем, что украинское правительство запретило своим гражданам доступ к Яндексу и его сервисам, приходится выдавать для посетителей сайта из Украины отдельные странички, в которых нет yandex.ru. Зачем? Просто потому, что тогда долго подгружается для них сайт. Несмотря на то, что на моем блоге читающего программиста украинцев относительно немного (5-10% от общего числа посетителей), все равно не хочется создавать им неудобства.



Итак, в чем состоит задача? Необходимо определять посетителей из Украины и не показывать им объявления от Яндекса (РСЯ), а также не учитывать их в метрике. Самый простой способ – это определение по ip-адресу. Даже если будет ошибка, то некритично: реклама заменяется на гугл адсенс, а отсутствие пары-тройки посетителей в метрике погоды для статистики не сделает.

Поискав готовые базы ip-адресов стран, я остановился на Sypex Geo. Качаем отсюда базу данных для стран - Sypex Geo Country – всего 255Кб. Заливаем её куда-нибудь на наш сервер. Также потребуется скачать файл SxGeo.php (Sypex Geo для PHP 5.2+) – его тоже куда-нибудь кладем на сайт.

Теперь пишем скрипт, определяющий ip-адрес и страну посетителя. Подключаем файлы и создаем объект класса SxGeo:

include("адрес до файла/SxGeo.php");
$SxGeo = new SxGeo('адрес до файла/SxGeo.dat');
Определяем ip-адрес посетителя:

$ip = $_SERVER['REMOTE_ADDR'];
Определяем страну:

$country = $SxGeo->getCountry($ip);
Теперь смотрите. Полученная переменная $country выдает результат в виде двухзначного ISO-кода страны. В данном случае это “UA”. Ну а дальше все еще проще:

if ($country=="UA") {
//тут выводим рекламу для Украины от гугла
}
else {
//тут выводим рекламу и метрику от яндекса для других стран
}
Не забываем высвободить часть ресурсов сервера (пригодится на высоконагруженных проектах):

unset($SxGeo);
Если вам требуется расширить функциональность вашего проекта, дополнить его скриптами, то будь это ваш личный блог, сайт-визитка, форум, онлайн игра, букс или любой другой проект – я вам помогу за небольшие деньги. Пишите на почту up777up@yandex.ru или сразу в скайп up777up2. Я умею не только определять, из какой страны посетители, а фактически могу выполнить любую работу по сайту на php или javascript на самописных движках или распространенных кмс. Пишите.
Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.

тегизаметки, яндекс, php, ip, Sypex Geo




Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.




Урок 22. Функции поиска в строках C#
Эффективная программа для получения всех простых множителей заданного числа на PHP
7 причин сыграть Дебют Рети