Anbei noch eine sehr frühe Variante für Eure Experimente.
Dank Kettis Tip ist es jetzt ein Modul, was im body beliebig platziert werden kann und eine Googlemap auf die Seite bringt. (gut für Anfahrtsbeschreibungen) Nötig ist nur ein Key, der bei Google kostenlos beantragt werden kann (habe ich im Modul verlinkt).
Dann müßt ihr noch eine Adresse eingeben, einen Titel des Infowindows und den Text .
Genutzt wird dabei eine http://phpinsider.com/php/code/GoogleMapAPI/, die nach backend/inc kopiert werden muss (liegt dem Zip aber bei)
ToDo
- beliebig viele Marker
- Veränderung der Klasse insbesondere printMap (ich habe da an eine neue Kasse sfGoogl... gedacht, die die Hauptfunktionen erbt)
- mehr Optionsfelder (Sidebar, andere Icons, direkte Eingabe von Koordinaten, Routenplaner usw.)
- JS in externe Datei schreiben
Würde die Klasse auch in das Modul packen.
Ja ja, ich wollte ja erben. Deshalb sollte die Klasse in der Grundform erhalten blieben und evtl. updates könnte einfach überkopiert werden
Bei mir funktioniert das Modul nicht. Ich habe mir einen Key bei Google geholt und und das Modul auf der Seite platziert. Wenn ich dann die Seite aufrufe, dann sehe ich alle Navigationselemente, aber keine Karte. Liegt das an Google oder am Modul?
Hab es mittlerweile selber heraus gefunden. Dem <div id="map"> muss mittels CSS noch eine Größe zugewiesen werden.
Ich lad dafür meistens die css per js nach:
document.write('<link rel="stylesheet" href="cms/css/maps.css" type="text/css" />');
Da mir das Modul schon gut gefällt, hab ich ein wenig die oberen FR aufgenommen und einen neue Version geschaffen.
Hoffe pawel ist mir nicht böse!
Bugfix:
- Google-Key Link => target _blank
- GoogleMapAPI-2.5 ins Modul gepackt
- Breite und Höhen können im Modul angegeben werden. Finde ich dort besser aufgehoben, als in der CSS-Datei!
Todo:
Schau mal in den Code. Da wird (ich versuch das jetzt aus dem Kopf) für Google $map=height('MOD_VALUE[4]') oder ähnlich verwendet.
Google Map kapiert das, aber anscheinend (wie schon mvsxyz geschrieben hat) braucht das DIV auch diese Angaben:
schonmal in die api geschaut ? dort gibt es sowas wie
Hab ich und es steht auch schon im Modul. Man kann die Breite ja erkennen, welche im Modul eingestellt ist, aber anscheinend muß dem DIV auch diese Größen mit gegeben werden. Das hatte ich mit dem Problem von msvxyz gemeint. Er mußte auch erst per CSS dem DIV eine Größe mitgeben, damit es funktioniert.
Deshalb wollte ich mit dem Ansatz von oben automatisch mitgeben.
Vielleicht würde auch hier gehen:
Probier mal einfach $map->printMap(); vielleicht ist es das , was du brauchst?
Ich habe es zur Zeit nirgendwo im Einsatz, deshalb kann ich nicht testen.
Kannst mal bei mir testen! PN on tour.
Geht, habs angepasst.
Dank dir pawel.
Diese Version kann ins Archiv wandern, da die neue Version http://forum.sefrengo.org/index.php?showtopic=2054 verfügbar ist!
Unterstützt von Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)