This widget allows you to add '''[http://code.google.com/apis/maps/ Google Maps]''' widget to your wiki page.
Created by [[mediawikiwikihttp://www.mediawikiwidgets.org/User:Sergey_Chernyshev Sergey Chernyshev|Sergey Chernyshev]]
<div style="float= Using this widget ==For information on how to use this widget, see [http: right">__TOC__</div>/www.mediawikiwidgets.org/Google_Maps widget description page on MediaWikiWidgets.org].
== Parameters Copy to your site ==* '''height''' To use this widget on your site, just install [http://www.mediawiki.org/wiki/Extension:Widgets MediaWiki Widgets extension] and copy [{{fullurl:{{FULLPAGENAME}}|action=edit}} full source code] of this page to your wiki as '''width{{FULLPAGENAME}}''' define map dimensions, 420x350 is defaultarticle.* '''lat''' </noinclude><includeonly><!--{if not isset($static)}--><!--{counter name="mapDivID" assign="mapDivID"}- map center latitude* '''lng''' - map center longitude><script type="text/javascript" src="http://www.google.com/jsapi"></script>* '''maptype''' - <script type of the map="text/javascript">google.load("maps", ''roadmap'' (default"2.s"), ''satellite'', ''hybrid'';// Call this function when the page has been loaded* '''zoom''' - zoom level google.setOnLoadCallback(function(defaults to 16){* '''xml''' - URL of XML if (google.maps.BrowserIsCompatible(KML/GeoRSS) data source (only one can be used for now) [[#Map types|*]]{* Markers:** '''centermarker'' var center = new GLatLng(' <!-- if set, then marker is added in the center of the map** Custom markers are defined using '''marker.''name''.{$lat|escape:'quotes'}-->', '''marker.''name''.<!--{$lng|escape:'quotes'}-->', additional parameters can be set to customize ); // Create and Center a marker:Map*** '''marker var map = new google.maps.''name''Map2(document.title'getElementById("map<!--{$mapDivID|escape:'html' }- title (only works on JavaScript-powered maps>"),*** '''marker {size: new google.''name''maps.letter'Size('' - letter icon (capital A<!-Z, only works on JavaScript-powered maps)*** {$width|escape:'quotes'|default:'marker.420'}-->'name''.icon, '<!--{$height|escape:'quotes' |default:350}- URL for the custom icon, 20x34px (only works on JavaScript-powered maps>')}* Controls [[#Map types|*]]: );** '''maptypecontrol''' - buttons that let the user toggle between map types .setCenter(such as Map and Satellitecenter, 13);** '''largemapcontrol'' map.setZoom(Number(' <!- displays a large pan/zoom control used on Google Maps** '''smallmapcontrol''' - displays a smaller pan/{$zoom control used on Google Maps** '''smallzoomcontrol'|escape:'quotes' |default:16}- displays a small zoom control (no panning controls) used in the small map blowup windows used to display driving directions steps on Google Maps** '''scalecontrol''' - displays a map scale** >'''overviewmapcontrol''' - displays a collapsible overview map in the corner of the screen));** '''hierarchicalmaptypecontrol''' - displays a selection of nested buttons and menu items for placing many map type selectors.enableScrollWheelZoom();
var createMarker =function(markerLatLng,MarkerTitle,markerIcon,markerPopup) { var marker=new google.maps.Marker(markerLatLng,{title:MarkerTitle,icon:markerIcon}); if (markerPopup) { GEvent.addListener(marker, "click", function() { marker.openInfoWindowHtml(markerPopup); }); } return marker; } <!--{foreach from=$marker item= Map types m}--> var markerIcon=new GIcon(G_DEFAULT_ICON); <!--{if isset($m.letter)}-->markerIcon.image="http://www.google.com/mapfiles/marker<!--{$m.letter|escape:'urlpathinfo'}-->.png";<!--{/if}--> <!--{if isset($m.icon)}-->markerIcon.image='<!--{$m.icon|validate:url}-->';<!--{/if}--> var markerLatLng = new GLatLng('<!--{$m.lat|escape:'quotes'}-->', '<!--{$m.lng|escape:'quotes'}-->'); var markerPopup=""; <!--{if isset($m.text)}-->markerPopup='<!--{$m.text|escape:'quotes'}-->';<!--{/if}-->By default var marker = new createMarker(markerLatLng,'<!--{$m.title|escape:'quotes'}-->', markerIcon,markerPopup); map.addOverlay(marker); <!--{/foreach}--> <!--{if isset($xml)}-->map.addOverlay(new GGeoXml('<!--{$xml|escape:'quotes'}-->'));<!--{/if}--> <!--{if isset($centermarker)}-->map.addOverlay(new google.maps.Marker(center));<!--{/if}--> <!--{if isset($maptypecontrol)}-->map.addControl(new GMapTypeControl());<!--{/if}--> <!--{if isset($largemapcontrol)}-->map is displayed using dynamic user interface with movable .addControl(new GLargeMapControl());<!--{/if}--> <!--{if isset($smallmapcontrol)}-->map.addControl(new GSmallMapControl());<!--{/if}--> <!--{if isset($smallzoomcontrol)}-->map.addControl(new GSmallZoomControl());<!--{/if}--> <!--{if isset($scalecontrol)}-->map.addControl(new GScaleControl());<!--{/if}--> <!--{if isset($overviewmapcontrol)}-->map.addControl(new GOverviewMapControl());<!--{/if}--> <!--{if isset($hierarchicalmaptypecontrol)}-->map.addControl(new GHierarchicalMapTypeControl());<!--{/if}--> <!--{if isset($maptype)}-->map, controls, loadable XML and so on.setMapType(<!--{if $maptype eq 'satellite'}-->G_SATELLITE_MAP<!--{elseif $maptype eq 'hybrid'}-->G_HYBRID_MAP<!--{else}-->G_NORMAL_MAP<!--{/if}-->);<!--{/if}-->
If you want static map image to be displayed, add '''static=yes''' which will tell widget to use [http://code.google.com/apis/maps/documentation/staticmaps/ Google Static Maps API]. It does not support XML (KML or GeoRSS }}) and controls, but supports markers. Use this one when you want map to load faster and to avoid JavaScript slowing down your page. Static map is also used for graceful degradation when dynamic map is specified, but client doesn't support dynamic features like JavaScript.;</script><div id== Bookmarklet ==Sometimes it's hard to get all the parameters you need for a "map to display <!-- coming up with longitude and latitude, correct zoom levels and so on might take too much time.To help with this problem, we created a bookmarklet that you can use on Google Maps site to grab map widget code for current location with just one click.Drag this bookmarklet {{#widget$mapDivID|escape:Bookmarklets/Google Maps|text=Maps Widget Code'html'}} to your links toolbar and just click it when you want to post a location on the map to your wiki.You can insert this bookmarklet into your wiki using [[Widget:Bookmarklets/Google Maps|Google Maps bookmarklet widget]]. -->" style== Sample results == === Moscow, Russia (static map with center marker) === <nowiki>{{#widget"width:</nowiki>{!--{PAGENAME}}<nowiki>|$width=600|height=400escape:'html'|lat=55.754796|lng=37.621479|zoom=12|static=yes|centermarker=yesdefault:'420'}}</nowiki--> {{#widgetpx; height:<!--{{PAGENAME}}|width=600|$height=400|lat=55.754796escape:'html'|lng=37.621479|zoom=12|static=yes|centermarker=yesdefault:350}-->px"><!--{/if} ==--><img src= KML feed from (["http://wwwmaps.melpediagoogleapis.com.au/wikimaps/api/Landmarks Melbourne Landmark Locations from Melpedia]) staticmap?sensor=false¢er==<nowiki>!--{{#widget$lat|escape:'urlpathinfo'}-->,</nowiki>!--{{PAGENAME$lng|escape:'urlpathinfo'}}<nowiki-->|width=600|height=400|lat&zoom=<!--37.813683|lng=144.963183|{$zoom=14|xml=httpescape://www.melpedia.com.au/wiki/Special'urlpathinfo'|default:KMLExport/Landmarks}16}-->&size=</nowiki>{{#widget:!--{{PAGENAME}}|$width=600|height=400escape:'urlpathinfo'|lat=default:'420'}-->x<!--37.813683{$height|lng=144.963183|zoom=14escape:'urlpathinfo'|xml=httpdefault://www.melpedia.com.au/wiki/Special:KMLExport/Landmarks350}} -->&markers=== Metropolitan Museum of Art <!--{if isset(with two markers and lots of controls$centermarker) ===}--><nowiki!--{$lat|escape:'urlpathinfo'}-->,<!--{{#widget$lng|escape:'urlpathinfo'}-->%7C<!--{/nowikiif}-->{{PAGENAME}}<nowiki>|width=600|height=400|lat=40.77895|lng=!--73.96231|marker.met.lat{foreach from=40.77895|$marker.met.lngitem=m}-73-><!--{$m.96231lat|marker.met.title=Metropolitan Museum of Art|marker.met.letter=M|marker.met.icon=httpescape://www.metmuseum.org/content/img/presentation/icons/favicon.ico|marker.met.text=The Metropolitan Museum of Art (colloquially The Met) is a renowned art museum in New York City. Its permanent collection contains more than two million works'urlpathinfo'}-->, divided into nineteen curatorial departments.|marker.centralpark.lat=40.78|marker.centralpark<!--{$m.lng=-73.965|marker.centralpark.title=Central Park|marker.centralpark.text=Central Park is a public park in the center of Manhattan.|marker.centralpark.letter=C|maptypecontrol=yes|largemapcontrol=yes|overviewmapcontrol=yes|scalecontrol=yes}escape:'urlpathinfo'}-->%7C<!--{/nowikiforeach}--> &maptype=<!--{{#widget$maptype|escape:'urlpathinfo'|default:{{PAGENAME'roadmap'}}|-->" width=600"<!--{$width|escape:'html'|default:'420'}-->" height=400|lat=40.779|lng="<!-73.963|marker.met.lat=40.77895|marker.met.lng=-73.96231{$height|marker.met.title=Metropolitan Museum of Art|marker.met.letter=Mescape:'html'|marker.met.icon=httpdefault://www.metmuseum.org/content/img/presentation/icons/favicon.ico|marker.met.text=The Metropolitan Museum of Art 350}-->"><!--{if not isset(colloquially The Met$static) is a renowned art museum in New York City. Its permanent collection contains more than two million works, divided into nineteen curatorial departments.|marker.centralpark.lat=40.78|marker.centralpark.lng=}--></div><!--73.965|marker.centralpark.title=Central Park|marker.centralpark.text=Central Park is a public park in the center of Manhattan.|marker.centralpark.letter=C|maptypecontrol=yes|largemapcontrol=yes|overviewmapcontrol=yes|scalecontrol=yes}}{{Comments}/if}--></includeonly>