Яндекс.Карты

Обычное подключение карт с примерами описано в разделе JS, jQuery: Построение карты с помощью API Яндекс.Карт.

А вот пример получения статичной карты (просто изображение): http://static-maps.yandex.ru/1.x/?ll=39.838045640096,57.657156596565&size=200,160&z=16&l=map&pt=39.838045640096,57.657156596565,flag (перейти по ссылке).

Еще бывает полезным геокодирование прямо из PHP: $resp = file_get_contents('https://geocode-maps.yandex.ru/1.x/?format=json&geocode=ГородУлицаНомерДома');

Или вариант PHP получения адреса по координатам (обратное геокодирование) с ключом: https://geocode-maps.yandex.ru/1.x/?format=json&apikey=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&geocode=57.74840000,40.92000000

Получить текущее местоположение (определить город):

ymaps.geolocation.get({
    provider:'yandex'
}).then(function(result){
    var components = result.geoObjects.get(0).properties.get('metaDataProperty').GeocoderMetaData.Address.Components;
    console.log(components);
});

Значение параметра provider определяет способ получения координат:

yandex - по базе яндекса IP-адресов

browser - по данным браузера (юзеру будет выдан запрос на предоставление гео-данных)

auto - всеми доступными способами с выдачей лучшего результата