最近試作了一個地圖搜尋網站,有點類似這個
使用者輸入地址後,會秀出方圓 1 公里內的教會
我的解決方案如下:
使用模組: Location, GMap, Views, Import Node, Views or
1. 使用 Import Node 將資料匯入
2. Views 的設定如下
3. 樣式 GMAP 的巨集設定如下
[gmap |behavior=+autozoom |control=Large |type=Map]
4. 過濾器: 位置:距離/附近的設定為 Use PHP code
PHP code 如下,目的是把輸入地址的經緯度設為中心點 :
$view = views_get_current_view();
$ads = $view->exposed_data['street'];
// Your Google Maps API key
$key = "你的 key";
// Desired address
$address = "http://maps.google.com/maps/geo?q=".$ads."&output=xml&key=$key";
// Retrieve the URL contents
$page = file_get_contents($address);
// Parse the returned XML file
$xml = new SimpleXMLElement($page);
// Parse the coordinate string
list($longitude, $latitude, $altitude) = explode(",", $xml->Response->Placemark->Point->coordinates);
return(array(
'latitude' => $latitude,
'longitude' => $longitude
));
大功告成~
目前需要解決的問題是,在使用者還未輸入資料前,顯示整個台灣地圖
希望有高手能協助解決這個問題,謝謝~
Re: 地圖搜尋網站
試試抓取瀏覽者的IP位置做為預設的地圖中心點,應該可以讓使用者有多一些親切感,就像你上國外網站時還是會看到台灣的色情網站廣告一樣的親切~
沒實做過,請有能者接下去公布相關模組使用教學~