Ответ 1
Локальный API поиска устарел, поэтому вам, вероятно, стоит переходить к "Адреса мест" .
В любом случае все, что вам нужно сделать, это запросить API (Search or) Places, извлечь LatLngs из результатов и поместить маркеры на карту.
Я не уверен, что вы имеете в виду с пользовательскими маркерами, я бы предположил, что (a) используя каждый результат собственный значок в качестве значка маркера или (b) позволяет пользователям искать среди ваших данных (маркеров) вместо Google Local/места.
(a) прост с помощью Библиотека мест. В примере place-search.html вы добавили бы только одну строку в функцию обратного вызова createMarker()
:
function createMarker(place) {
var placeLoc = place.geometry.location;
var marker = new google.maps.Marker({
map: map,
icon: place.icon,
position: place.geometry.location
});
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent(place.name);
infowindow.open(map, this);
});
}
Оригинальные значки выглядят большими, поэтому вы можете уменьшить их.
(b) будет другая история, например Создание локатора хранилища с PHP, MySQL и Google Maps.