Страница 2 из 7«123467»
Модератор форума: JonMagon 
Сообщество uCoz » Вебмастеру » JavaScript, Flash и прочие технологии » API Яндекс Карты (Интересные решения и идеи?)
API Яндекс Карты
Bondavy
Сообщений: 6
Репутация: 0

Сообщение # 16 | 18:29:58
Цитата ele59571 ()
Bondavy, эта карта будет работать только на странице материала
По-моему здесь как-то реализовали это, если я не ошибаюсь http://modernrealtor.ru/
ele59571
Сообщений: 54
Репутация: 24

Сообщение # 17 | 02:16:45
Bondavy, $OTHER4$ будет работать только на страницах модуля, а на главной странице сайта - нет

Добавлено (10 Сен 2014, 02:13:43)
---------------------------------------------
но как загружать все адреса , не могу понять

http://api.yandex.ru/maps/jsbox/2.1/geo_object_collection

Добавлено (10 Сен 2014, 02:16:45)
---------------------------------------------
или вручную: http://api.yandex.ru/maps/tools/constructor/

SOCHI1014
Сообщений: 863
Репутация: 229

Сообщение # 18 | 07:08:11
Цитата ele59571 ()
Bondavy, $OTHER4$ будет работать только на страницах модуля, а на главной странице сайта - нетДобавлено (10 Сен 2014, 02:13:43)
---------------------------------------------
но как загружать все адреса , не могу понять

http://api.yandex.ru/maps/jsbox/2.1/geo_object_collection

Добавлено (10 Сен 2014, 02:16:45)
---------------------------------------------
или вручную: http://api.yandex.ru/maps/tools/constructor/
Вручную вписывая координаты

Bondavy
Сообщений: 6
Репутация: 0

Сообщение # 19 | 11:43:12
Цитата ele59571 ()
Bondavy, $OTHER4$ будет работать только на страницах модуля, а на главной странице сайта - нет
Как вариант выводить код через информер. Но я хз как именно. Кроме как вручную забивать адреса в конструкторе не получается wink
ele59571
Сообщений: 54
Репутация: 24

Сообщение # 20 | 13:28:56
информер- не вариант, лучше тогда вручную создать в конструкторе
Sonor
Сообщений: 238
Репутация: 503

Сообщение # 21 | 20:02:18
Цитата Bondavy ()
По-моему здесь как-то реализовали это, если я не ошибаюсь http://modernrealtor.ru/

Пока показываются не все, а только некоторые объекты:
Код
<script src="//api-maps.yandex.ru/2.0/?load=package.full&mode=debug&lang=ru-RU"></script>
<script>
ymaps.ready(init);
function init(){  
var geolocation = ymaps.geolocation,
coords = [geolocation.latitude, geolocation.longitude],
map = new ymaps.Map('map', {
center: coords,
zoom: 4,
type: 'yandex#publicMap'
};);
map.controls
.add('smallZoomControl');
so = new ymaps.Clusterer();
$MYINF_1$
map.geoObjects.add(so);
map.balloon.open(
coords, {
contentHeader: ymaps.geolocation.country,
contentBody: ymaps.geolocation.region
};);
}
</script>


Информер:
Код
ymaps.geocode('<?if($FILTER3$='за рубежом')?><?else?>$FILTER3$<?endif?><?if($OTHER1$)?><?if($FILTER3$='за рубежом')?><?else?>, <?endif?>$OTHER1$<?endif?><?if($OTHER2$)?>, $OTHER2$<?else?><?if($OTHER3$)?>, $OTHER3$<?endif?><?endif?>').then(
function (res) {
res.geoObjects.get(0).properties.set({clusterCaption: 'Объект № $ID$', balloonContentHeader: '$TITLE$', balloonContentFooter: '<a href="/board<?substr($ENTRY_URL$,strrpos($ENTRY_URL$,'/'))?>">объявление</a> »'};);
so.add(res.geoObjects.get(0));
};);


По всем модулям катастрофически не хватает полей. Но в связи с появлением seo-модуля, возможно получится сделать рокировку и одно, из задействованных ранее, изменить под широту-долготу, чтобы не использовать прямое геокодирование. В этом случае можно будет вывести информерами последних 2400 объектов (8 категорий). Выводить вставкой координат вручную не вижу смысла, так как при удалении объявления пользователем, метка останется, но поведёт на 404.

stalker-33
Сообщений: 1
Репутация: 0

Сообщение # 22 | 22:40:59

Цитата defaultNick7798 ()
Варианты применения API Яндекс Карт в разных модулях? Интересные решения и идеи?


Всем привет! У меня не совсем стандартное применение апи. Я его использую для отображения в сети больших картинок с генеалогическими деревьями
пример карты

Но столкнулся с проблемой уменьшения разрешения при нарезке файла на тайлы. Загоняю картинку для нарезки на тайлы в программу подготовки слоя. нарезаю, вроде все нормально, масштабы выбираю все. Однако, исходный фал 35 мег, а на выходе все слои в сумме 12 мег и качество соответчтвенно плохое... Где может быть проблема?
И буду благодарен если кто подскажет как сделать на моей "карте" метки с информацией по персонам в дереве и прочертить ветки дерева как дороги, чтоб можно было их искать по Фамилиям....

Сергей
Sonor
Сообщений: 238
Репутация: 503

Сообщение # 23 | 20:37:43
Цитата
со всеми метками адресов

после геокодирования и geoObjects,
третий вариант: http://habrahabr.ru/company/yandex/blog/243665/, в клубе об этом нововведении упоминалось ранее. Подружить с системой можно, в тестовом режиме всё отрисовывается весьма шустро, и браузеры не падают, в том числе IE. Есть небольшие проблемы, но они, наверное, обходимы.

A15
Сообщений: 70
Репутация: 5

Сообщение # 24 | 00:02:42
Цитата Sonor ()
Информер:ymaps.geocode('<?if($FILTER3$='за рубежом')?><?else?>$FILTER3$<?endif?><?if($OTHER1$)?><?if($FILTER3$='за рубежом')?><?else?>, <?endif?>$OTHER1$<?endif?><?if($OTHER2$)?>, $OTHER2$<?else?><?if($OTHER3$)?>, $OTHER3$<?endif?><?endif?>').then(
function (res) {
res.geoObjects.get(0).properties.set({clusterCaption: 'Объект № $ID$', balloonContentHeader: '$TITLE$', balloonContentFooter: '<a href="/board<?substr($ENTRY_URL$,strrpos($ENTRY_URL$,'/'))?>">объявление</a> »'};);
so.add(res.geoObjects.get(0));
};);
1
2
3
4
5
6
7
8
9


Подскажите как правильно создать информер, в какой необходимо загрузить этот код + он будет работать на главной странице допустим доски объявлений? Спасибо

Любые вопросы по системе uCoz. Качественная техническая поддержка сайтов и любые консультации
Sonor
Сообщений: 238
Репутация: 503

Сообщение # 25 | 01:38:51
Информер в случайном порядке — 50 материалов, в других вариациях — 300, дальше допопции. Он будет работать, если в каком-либо поле присутствует адрес объекта, например, в $OTHER1$, тогда код информера может иметь такой вид:
Код
ymaps.geocode('$OTHER1$').then (function (res) {res.geoObjects.get(0).properties.set({clusterCaption:'$ID$',balloonContentFooter:'<a href="$ENTRY_URL$">$TITLE$</a>'};);
so.add(res.geoObjects.get(0));};);

A15
Сообщений: 70
Репутация: 5

Сообщение # 26 | 19:42:31
Sonor, вставил это в head главной доска объявлений:

Код
<script src="//api-maps.yandex.ru/2.0/?load=package.full&mode=debug&lang=ru-RU"></script>   
   <script>   
   ymaps.ready(init);   
   function init(){    
   var geolocation = ymaps.geolocation,   
   coords = [geolocation.latitude, geolocation.longitude],   
   map = new ymaps.Map('map', {   
   center: coords,   
   zoom: 4,   
   type: 'yandex#publicMap'   
   };);   
   map.controls   
   .add('smallZoomControl');   
   so = new ymaps.Clusterer();   
   $MYINF_1$   
   map.geoObjects.add(so);   
   map.balloon.open(   
   coords, {   
   contentHeader: ymaps.geolocation.country,   
   contentBody: ymaps.geolocation.region   
   };);   
   }   
   </script>

а этот код в информер доска объявлений - 50 материалов - в случайном порядке - 1 колонка:
Код
ymaps.geocode('$OTHER1$').then (function (res)   
{res.geoObjects.get(0).properties.set({clusterCaption:'$ID$',balloonContentFooter:'<a
   href="$ENTRY_URL$">$TITLE$</a>'};);   
   so.add(res.geoObjects.get(0));};);

на моем сайте примере http://versal-dubna.3dn.ru/ на главной модуля доска объявлений внизу где я хочу вывести на карте парочку объектов просто системный код без карты. Что не так делаю? буду признателен за помощь!

Любые вопросы по системе uCoz. Качественная техническая поддержка сайтов и любые консультации
Сообщение отредактировал A15 - Суббота, 10 Янв 2015, 19:43:13
Sonor
Сообщений: 238
Репутация: 503

Сообщение # 27 | 21:13:04
причуды со вставкой кода, добавляются лишние точка с запятой.

В первом скрипте вывода карты нужно заменить:
11 строка: };); на });
21 строка: };); на });
---
В информере, в конце 3-й и 4-й строк, тоже самое: };); заменить на });

Также перед ул. Ленинградская д.24 нужно добавить город.

Сообщение отредактировал Sonor - Суббота, 10 Янв 2015, 21:15:41
A15
Сообщений: 70
Репутация: 5

Сообщение # 28 | 21:45:03
Sonor, спасибо. щас попробую. В идеале сделать как на этом сайте (то что нужно как говорится) http://randubna.ru/

Добавлено (10 Янв 2015, 21:45:03)
---------------------------------------------
всё изменил но не работает(
код измененный:

Код
<script src="http://api-maps.yandex.ru/2.0/?load=package.full&mode=debug&lang=ru-RU"></script>
<script>
ymaps.ready(init);
function init(){  
var geolocation = ymaps.geolocation,
coords = [geolocation.latitude, geolocation.longitude],
map = new ymaps.Map('map', {
center: coords,
zoom: 4,
type: 'yandex#publicMap'
});
map.controls
.add('smallZoomControl');
so = new ymaps.Clusterer();
$MYINF_1$
map.geoObjects.add(so);
map.balloon.open(
coords, {
contentHeader: ymaps.geolocation.country,
contentBody: ymaps.geolocation.region
});  
}
</script>
и информер:
Код
ymaps.geocode('$OTHER3$').then (function (res) {res.geoObjects.get(0).properties.set({clusterCaption:'$ID$',balloonContentFooter:'<a href="$ENTRY_URL$">$TITLE$</a>'});
so.add(res.geoObjects.get(0));});
Адреса у меня в $OTHER3$ везде прописал г. Дубна, ул Бла бла бла)

Любые вопросы по системе uCoz. Качественная техническая поддержка сайтов и любые консультации
Sonor
Сообщений: 238
Репутация: 503

Сообщение # 29 | 22:03:56
Конечно, не будет работать без:
<div id="map"></div> — этот код в любое место между <body> и </body>

A15
Сообщений: 70
Репутация: 5

Сообщение # 30 | 22:51:17
Работающий вариант карты для главной странице модуля (на примере Доска объявлений):

Ставим между <head></head>

Код
<script src="http://api-maps.yandex.ru/2.0/?load=package.full&mode=debug&lang=ru-RU"></script>  
  <script>  
  ymaps.ready(init);  
  function init(){   
  var geolocation = ymaps.geolocation,  
  coords = [geolocation.latitude, geolocation.longitude],  
  map = new ymaps.Map('map', {  
  center: coords,  
  zoom: 4,  
  type: 'yandex#publicMap'  
  });  
  map.controls  
  .add('smallZoomControl');  
  so = new ymaps.Clusterer();  
  $MYINF_1$  
  map.geoObjects.add(so);  
  map.balloon.open(  
  coords, {  
  contentHeader: ymaps.geolocation.country,  
  contentBody: ymaps.geolocation.region  
  });   
  }  
  </script>

Создаем информер Доска объявлений, материалы, 50 материалов, случайные материалы и вставляем в код информера:

Код
ymaps.geocode('$OTHER3$').then (function (res)  
{res.geoObjects.get(0).properties.set({clusterCaption:'$ID$',balloonContentFooter:'<a
  href="$ENTRY_URL$">$TITLE$</a>'});  
  so.add(res.geoObjects.get(0));});

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

Вставляем между <body></body> в любое место где должна быть карта:

Код
<div id="map" style="width:680px; height:400px"></div>

Большое спасибо Sonor'y за помощь!

Любые вопросы по системе uCoz. Качественная техническая поддержка сайтов и любые консультации
Сообщество uCoz » Вебмастеру » JavaScript, Flash и прочие технологии » API Яндекс Карты (Интересные решения и идеи?)
Страница 2 из 7«123467»
Поиск: