Alexeina66
Мой дом здесь!
- Регистрация
- 26 Авг 2013
- Сообщения
- 426
- Реакции
- 445
- Автор темы
- #1
Мощный шаблон по созданию функционала а-ля "2gis". Полностью продуманное решение в плане монетизации. Поиск осуществляется по карте Google либо Mapbox api.
Стоит отметить, что Google пошел на встречу пользователям и теперь дает 200$ каждому ключу api ежемесячно, что не может не радовать!
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра скрытого содержимого вы должны войти или зарегистрироваться.
Если у кого есть лицензия 2.0.10 то без проблем сделаю null.
Тема обновляемая!
В поисковой строке есть функция определения местоположения 3 способами
- GEO IP
- IP API
- GPS
Суть в том что все 3 способа подставляют английские названия, что не очень хорошо.
Есть такой сервис как Для просмотра ссылки Войдиили Зарегистрируйся который как раз выдает все данные по ip в формате JSON в том числе название города.
Решение
1. В настройках шаблона выбрать IP API
2. Заменить файл themes\listingpro\assets\js\main.js на этот
Радуемся...но не долго
Теперь нужно придумать как внедрить защиту от ботов и кешировать определение местоположения, так как sypexgeo дает всего 10 000 запросов в месяц.
- GEO IP
- IP API
- GPS
Суть в том что все 3 способа подставляют английские названия, что не очень хорошо.
Есть такой сервис как Для просмотра ссылки Войди
Решение
1. В настройках шаблона выбрать IP API
2. Заменить файл themes\listingpro\assets\js\main.js на этот
Для просмотра скрытого содержимого вы должны войти или зарегистрироваться.
Радуемся...но не долго
Теперь нужно придумать как внедрить защиту от ботов и кешировать определение местоположения, так как sypexgeo дает всего 10 000 запросов в месяц.
Внимание! Обязательно учитывайте, что на сайт "ходят" не только обычные посетители, но и поисковые боты, которые могут создавать много запросов к сайту и соответственно к API.
Поэтому обязательно фильтруйте запросы от поисковых ботов. Это можно сделать простейшим регулярным выражением, вида:
Также следует кэшировать результаты запросов для пользователей, чтобы при посещении пользователем 100 страниц сайта, не делать 100 запросов к API.
Поэтому обязательно фильтруйте запросы от поисковых ботов. Это можно сделать простейшим регулярным выражением, вида:
Код:
$is_bot = preg_match(
"~(Google|Yahoo|Rambler|Bot|Yandex|Spider|Snoopy|Crawler|Finder|Mail|curl)~i",
$_SERVER['HTTP_USER_AGENT']
);
$geo = !$is_bot ? json_decode(file_get_contents('http://api.sypexgeo.net/json/'), true) : [];
var_dump($geo);
Последнее редактирование: