Добрый день!
Пробую организовать отображение разных на карте меток в зависимости от значения произвольных полей в постах к которым они относятся.
Допустим имеется поле 'meta_key' => 'vibor', 'value' => array('Первое', 'Второе)'.
на карте отображены метки с балунами и сылками на посты . Вот часть кода отвечающая за вывод
$content = "<script type='text/javascript'>
ymaps.ready(function () {
myMap = new ymaps.Map('yam-$idmap', {
center: [55.819543, 37.611619],
zoom: 12,
controls: ['zoomControl','typeSelector','fullscreenControl']
}),
clusterer = new ymaps.Clusterer(),
geoObjects = [];
// Создаем экземпляр класса ymaps.control.SearchControl
mySearchControl = new ymaps.control.SearchControl({
options: {
provider:'yandex#search'
}
});
myMap.controls.add(mySearchControl);
";
foreach($posts as $k=>$post){
$thumbnail = (has_post_thumbnail( $post->ID ))? get_the_post_thumbnail($post->ID,'thumbnail'): '';
$content .= 'geoObjects['.$k.'] = new ymaps.Placemark('
. '['.implode(',',unserialize($post->coords)).'], '
. '{
balloonContentBody: [\'<p><b>'.$post->post_title.'</b></p><p>'.$thumbnail.yam_excerpt($post).'</p>\'].join(\'\'),
clusterCaption: \''.$post->post_title.'\'
}, {preset: \'islands#glyphIcon\', iconGlyphColor: \'green\', iconColor: \'green\'}),
';
}
$content .= "
clusterer.options.set({
gridSize: 80,
clusterDisableClickZoom: false
});
clusterer.add(geoObjects);
myMap.geoObjects.add(clusterer);
myMap.setBounds(clusterer.getBounds(), {
checkZoomRange: true
});
});
</script>
<div id='yam-$idmap' class='yam-map'></div>";
return $content;
Пожалуйста подскажите, каким образом можно дополнить код, чтобы была возможность отображения отдельной метки дя каждого значения произвольного поля.
Хотябы в общих чертах. Если будет пример, еще лучше.
Заранее спасибо !