Для вывода плейсмарков на карте написал такой код с циклом:
<?php
$js = "
Establishments = new ymaps.GeoObjectCollection();
";
foreach($marksArray as $mark) {
$js .= "
Establishments.add(new ymaps.Placemark([".$mark->lat.", ".$mark->lng."], {
EstablishmentId: ".$mark->id.",
EstablishmentName: '".$mark->name."'
}, {
iconLayout: 'default#image',
iconImageHref: '".$mark->image."',
iconImageSize: [32, 32],
iconImageOffset: [-20, -25]
}));
";
}
$js .= "
myMap.geoObjects.add(Establishments);
";
$this->registerJs($js);
Но если в базе будет сотни или даже тысячи плейсмарков, то страница будет грузится несколько лет, вопрос — как можно оптимизировать это? Копался в API, ничего подходящего не нашел.