Работа с геолокацией на сайте

 
Посетитель
small user social cms
Сообщений: 31
Здравствуйте. Такой вопрос. Есть сайт компании, офисы которой расположены во многих городах России. При разработке сайта стояла задача определять город пользователя и показывать ему контакты в шапке, исходя из его местоположения.

Вот на этом сайте - http://ohranatrudapro.ru/ геолокация от яндекса уже подключена. Город определяется верно, с этим проблем нет. Далее. Как мы хотели реализовать вывод адресов. Сделать специальную позицию для виджетов, в которой бы располагались 20 виджетов, с таким кодом внутри:

Код PHP:
  1. <script type="text/javascript">
  2. window.onload = function () {
  3. var city = ymaps.geolocation.city;
  4. if(city == 'Москва'){
  5. jQuery("#user-city").text('Бесплатная доставка по Москве');
  6. } else {
  7. jQuery("#user-city").text('Для Вашего города доставка Почтой России');
  8. }
  9. }
  10. </script>
Этот скрипт тоже работает, но как-то странно. Он отображает эти данные в том месте сайта, где выводится город пользователя. Причина понятна: Потому что там стоит такая конструкция:

Код PHP:
  1. Ваш город: <b><span id="user-city"></span></b>
Может кто-то сталкивался с таким вопросом? Помогите разобраться, как все это правильно реализовать - в долгу не останусь, на пиво закину) Больше пока нет(((
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 2603
Можете просто продублировать каждый вариант с добавлением нужного текста или html в див или спан с другим идентификатором

Код PHP:
  1. <script type="text/javascript">
  2. window.onload = function () {
  3. var city = ymaps.geolocation.city;
  4. if(city == 'Москва'){
  5. jQuery("#user-city").text('Бесплатная доставка по Москве');
  6. jQuery("#user-city2").text('бла бла бла');
  7. } else {
  8. jQuery("#user-city").text('Для Вашего города доставка Почтой России');
  9. jQuery("#user-city2").text('бла бла бла');
  10. }
  11. }
  12. </script>
Код PHP:
  1. <div id="user-city2">здесь будет выведено бла бла бла</div>
я примерно так делал недавно тоже с api Яндекса и два раза на странице нужно было вывести связанный с городом текст

Чтобы не дублировать 20 раз и не перебирать города через if в javascript-е, полученный город можно отправить ajax-ом в post запросе на php скрипт, который соберет, если надо с выборкой из БД, текст для этого города, и вернёт.
Редактировалось: 2 раз (Последний: 7 февраля 2019 в 19:17)
Реклама
cms
Посетитель
small user social cms
Сообщений: 31
Нил™, спасибо большое! Буду пробовать
Посетитель
small user social cms
Медаль
Сообщений: 933
А как реализовать показ контента в зависимости от геолокации. Для Москвы одно, Воронежа другое и тд
Анапа объявления
Быстрый хостинг
Посетитель
small user social cms
Сообщений: 83
Capitan:
А как реализовать показ контента в зависимости от геолокации
Определение Страна-Регион-Город + автоматическая фильтрация без нажатия кнопки "фильтровать" .
Folder Find Text наше все !
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.