Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

[Решено] Простое решение вывода названия города по ip


Recommended Posts

В шапке или подвале подключаем API Яндекс Карты
 

 

<script src="http://api-maps.yandex.ru/2.0-stable/?load=package.standard〈=ru-RU" type="text/javascript"></script>
 

 

 
Выводим название города в блоке где необходимо, с id=”user-city”
 


 

<script type="text/javascript">
  window.onload = function () {
      jQuery("#user-city").text(ymaps.geolocation.city);
  }
</script>
 

 

 
пример colaweb.ru/internet-magazinyi

  • +1 2
Надіслати
Поділитися на інших сайтах

Можно не выводить название города, а использовать его для вывода специальных объявлений для посетителей из разных городов.

 

Например: (при помощи if)посетитель из Москвы, выводите сообщение «Бесплатная доставка по Москве»,

 

а для других городов (при помощи else) «Доставка почтой России»

Надіслати
Поділитися на інших сайтах

  • 2 weeks later...

Можно не выводить название города, а использовать его для вывода специальных объявлений для посетителей из разных городов.

 

Например: (при помощи if)посетитель из Москвы, выводите сообщение «Бесплатная доставка по Москве»,

 

а для других городов (при помощи else) «Доставка почтой России»

 

А как это сделать? :)

Надіслати
Поділитися на інших сайтах

А как это сделать? :)

 

Примерно так

 

<div id="user-city"></div> //здесь будет выводиться сообщение

<script src="http://api-maps.yandex.ru/2.0-stable/?load=package.standard〈=ru-RU" type="text/javascript"></script>

<script type="text/javascript">

window.onload = function () {
 var city = ymaps.geolocation.city;
 if(city == 'Москва'){
  jQuery("#user-city").text('Бесплатная доставка по Москве');
 }else{
  jQuery("#user-city").text('Доставка почтой России');
 }
}

</script>
 
  • +1 2
Надіслати
Поділитися на інших сайтах

  • 5 months later...
  • 1 year later...
  • 1 year later...

В шапке или подвале подключаем API Яндекс Карты

 

 

<script src="http://api-maps.yandex.ru/2.0-stable/?load=package.standard〈=ru-RU" type="text/javascript"></script>
 

 

 

Выводим название города в блоке где необходимо, с id=”user-city”

 

<script type="text/javascript">
  window.onload = function () {
      jQuery("#user-city").text(ymaps.geolocation.city);
  }
</script>
 

 

пример colaweb.ru/internet-magazinyi

Отлично друг! Все работает! Благодарочка! Я рекомендую использовать <span id="user-city"> так больше возможностей))

Змінено користувачем GeoRin
Надіслати
Поділитися на інших сайтах


  • 4 weeks later...

Вы очень можете этим самым навредить. В частности, яндекс-бот собирает информацию, IP Московский.

 

Поэтому запросто может присвоить региональность Москва. Вот если бы скрипт исключал поисковиков - тогда очень полезно, бесспорно.

 

Над реализацией сам думал, но именно тот факт, что робот тоже определит город - эту информацию он и занесет в индекс.

Надіслати
Поділитися на інших сайтах


В дополнение к выше сказанному мной.

 

В файле шаблона, где будем выводить информацию по городу, пишем функцию php

function isBot(&$botname = ''){
/* Эта функция будет проверять, является ли посетитель роботом поисковой системы */
  $bots = array(
    'rambler','googlebot','aport','yahoo','msnbot','turtle','mail.ru','omsktele',
    'yetibot','picsearch','sape.bot','sape_context','gigabot','snapbot','alexa.com',
    'megadownload.net','askpeter.info','igde.ru','ask.com','qwartabot','yanga.co.uk',
    'scoutjet','similarpages','oozbot','shrinktheweb.com','aboutusbot','followsite.com',
    'dataparksearch','google-sitemaps','appEngine-google','feedfetcher-google',
    'liveinternet.ru','xml-sitemaps.com','agama','metadatalabs.com','h1.hrn.ru',
    'googlealert.com','seo-rus.com','yaDirectBot','yandeG','yandex',
    'yandexSomething','Copyscape.com','AdsBot-Google','domaintools.com',
    'Nigma.ru','bing.com','dotnetdotcom'
  );
  foreach($bots as $bot)
    if(stripos($_SERVER['HTTP_USER_AGENT'], $bot) !== false){
      $botname = $bot;
      return true;
    }
  return false;
}

Далее используем условие:

if( isBot($bname) ) {
   // ничего не вствляем, а если не бот - вставляем геопределение региона яндексу.
}
Надіслати
Поділитися на інших сайтах


  • 1 year later...

Помогите плиз.

Я сделал, как написал colaweb

Задача, определить страну посетителя и подставить ему нужную информацию.

Все работает в таком виде:

window.onload = function () {
	var country = ymaps.geolocation.country;
	if(country == 'Беларусь') {
	jQuery(".currency").text('70 бел. р.');
	}
	if(country == 'Россия') {
	jQuery(".currency").text('1690 р.');
	}
}

Но если страна здесь не указана и пользователь пришел например из Украины, добавляем такой кусок:

else {
  jQuery(".currency").text('Доставка X');
 }

но в таком случает если же я пришел из России, все равно срабатывает 'else'

как исправить?

заранее премного благодарен, спасибо :)

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.