
GeoAddress ist ein WordPress-Plugin zum Erstellen einer Kontakt-/Adressliste die in einer Google-Map mittels Markern dargestellt werden kann. Die Darstellung der Google-Map bzw. des Adressformulars kann im Adminbereich mittels zahlreicher Optionen beeinflusst werden.
Per Default wird unter der Google-Map eine vollständige Liste der (aktivierten) Adressen ausgegeben. Wer diese Liste lieber in eine Sidebar packen möchte, kann dies mittels des mitgelieferten GeoAddress-Sidebar-Widget realisieren.
Aktuelle Version:
1.0
Features:
- Umfangreiche Einstellmöglichkeiten für Karte und Formular
- Versenden einer Bestätigungsmail an den User
- Versenden einer Mitteilung an den Admin nachdem der User seine Angaben bestätigt hat
- Darstellung der Adressliste in einer Sidebar (GeoAddressSidebar-Widget ist im Download enthalten)
- Aktivierung kann nur durch den Admin durchgeführt werden.
- Bei der Aktivierung wird anhand einer zusätzlichen Karte direkt angezeigt ob die eingegebene Adresse von Google-Maps auch dargestellt werden kann.
- Spamschutz mittels captcha-Überprüfung
- XSS-Check der eingegebenen Formulardaten
Links:
Demo-Adressformular, Demo-Karte, GeoAddress-Download
Anmerkung
GeoAddress ist mein erstes WordPress-Plugin. Da ich eigentlich eher aus der Joomla-Programmierung komme und mich mit der WordPress-API noch nicht so gut (eher wenig) auskenne, sei mir Verziehen wenn ich in den Scripten evtl. das Rad an manchen Stellen neu erfunden habe ;-)
Wenn du einen Fehler gefunden hast, einen Wunsch für kommende Updates hast, oder einfach nur deinen Kommentar zu dem Plugin abgeben möchtest, so kannst du dies hier gerne tun ich freue mich über jede Reaktion (egal ob Pro oder Kontra): Comments
Voraussetzungen:
Getestet mit WordPress 2.2.1 und IE 7, Firefox 2.0.0.4 und Opera 9.21
Einschränkungen:
Die Adressliste sollte nicht zu groß werden da Google-Maps für jede Adresse eine GeoCode-Abfrage durchführen muss. Ich habe es mit ca. 30 Adressen getestet und konnte damit noch eine korrekte Geschwindigkeit der Kartendarstellung erzielen. Wo allerdings die Obergrenze liegt bei der der Kartenaufbau zu lange dauert lässt sich nur durch probieren herausfinden ;-)
Weitere Einschränkungen siehe: Google-Maps API, hier kann auch direkt ein API-Key generiert werden der zur Anzeige einer Google-Map benötigt wird.
Screenshots aus dem Adminbereich
Installation
Seiten-Templates
Zur Anzeige der Karte bzw. des Formulars werden 2 neue Seiten-Templates benötigt.
Da es aber bei der Unmenge von Templates nahezu Unmöglich ist eine All-in-One Lösung dieser 2 Templates anzufertigen, muß hier ein wenig do-it-yourself vorgenommen werden.
Im Download enthalten sind 2 Beispiel-Templates für das WordPress-Standard-Theme.
Workarround Seiten-Templates
1.) Aus dem Verzeichniss wp-content/themes/_dein_theme_/ deiner WordPress-Installation kopierst du dir die Datei pages.php auf deinen lokalen PC.
2.) Diese Datei muß nun 2x kopiert und als geoAddressForm.php und geoAddressMap.php abgespeichert werden.
3.) Änderungen in der (neuen Datei) geoAddressForm.php:
i.d.R. fängt diese Datei (in etwa) so an:
<?php get_header(); ?>
<div id="content" class="narrowcolumn">
...
...dieses ändern wir in:
<?php
/*
Template Name: GeoAddressForm
*/
get_header();
?>
<div id="content" class="narrowcolumn">
...
...Sollte die Datei anders beginnen, ist dies nicht weiter tragisch, wichtig hierbei ist eigentlich nur, dass der Name des Templates ( hier: GeoAddressForm ) am ANFANG der Datei definiert wird.
als nächstes wird alles gelöscht das sich zwischen <div class="entry"> ... </div> befindet:
<div class="entry">
...
...
</div>Hier fügen wir nun den Aufruf des GeoAdress-Formulars ein:
<div class="entry">
<?php
if(!$_POST["addAddress"] &&
!$_POST["newId"] &&
!$_REQUEST["valid"] &&
!$_REQUEST["key"]) {
the_content();
}
?>
<br />
<?php
GeoAddress_display ();
?>
</div>4.) Änderungen in der (neuen Datei) geoAddressMap.php:
Hier muß, wie zuvor, wieder der Name des Templates definiert und zusätzlich noch eine Datei inkludiert werden:
<?php
/*
Template Name: GeoAddressMap
*/
include(ABSPATH."/wp-content/plugins/geoAddress/inc/mapDisplayHead.php");
get_header();
?>
<div id="content" class="narrowcolumn">
...
...Anschießend wieder alles zwischen <div class="entry"> ... </div> löschen und durch folgenden Code ersetzen:
<div class="entry">
<br />
<?php
the_content();
$gA->GeoAddress_displayMap();
if($params["ShowSideClick"] == "1") {
echo $gA->_GetSideClick;
}
GeoAdress_cp();
?>
</div>5.) Sind alle Änderungen gemacht, die zwei neuen Template-Dateien auf den Webserver in das Verzeichnis: wp-content/themes/_dein_theme_/ hochladen.
Site-Click (Adressliste)
Die Adressliste wird per Default unter der Karte angezeigt, möchtest du die Adressliste allerdings in der rechten bzw. linken Sidebar haben, muß das geoAdressSidebar-Widget installiert sein (im Download enthalten).
!! WICHTIG !!
Das Verzeichnis wp-content/plugins/geoAddress/gd muss Schreibrechte haben ( chmod 757 ), sonst können die Captcha-Grafiken nicht erstellt werden!
Anwendung
Damit das Formular zur Adresseingabe angezeigt werden kann, muß nur eine statische Seite erstellt werden. Dieser muß unter dem Optionspunkt -Seiten-Template- das Template geoAddressForm zugewiesen werden.
Zusätzlich kann auch ein Einleitungstext für dieses Formular eingegeben werden, dieser erscheint über dem Formular.
Damit die Karte angezeigt werden kann, muß eine weitere statische Seite erstellt werden. Dieser muß unter dem Optionspunkt -Seiten-Template- das Template geoAddressMap zugewiesen werden.
Zusätzlich kann auch ein Einleitungstext für die Karte eingegeben werden, dieser erscheint über der Karte.
Siehe hierzu auch: Installation -> Seiten-Templates
Sollen die Adresseinträge ausschließlich vom Administrator gepflegt werden, kann das Adressformular natürlich auch weggelassen werden ;-)
!! WICHTIG !!
Zur Anzeige einer Google-Map wird ein API-Key benötigt, dieser kann hier -API-Key- kostenlos generiert werden.
ToDo
- Speicherung der ermittelten Koordinaten damit nicht immer eine GeoCoder-Abfrage an Google-Maps gesendet werden muß.
- Gruppierung von Markern die räumlich nicht weit voneinander entfernt sind.
- Möglichkeit für verschiedene Icon-Typen bzw. Icon-Farben je nach Kategorie.
- Möglichkeit zur Sortierung der Adressliste
- Filter zur Anzeige nach Kategorie
- Englische übersetzung
- ...
- ...
Danksagung
Da es ja nicht immer selbstverständlich ist sich bei jemanden zu bedanken, möchte ich dies an dieser Stelle trotzdem mal tun.
Danke für die 2 wirklich tollen PHP-Klassen an die Script-Autoren:
- Mitchelle C. Pascual http://ordinarywebguy.wordpress.com ( PHP-Klasse: Easy Google Map )
- Horst Nogajski http://www.nogajski.de/ ( PHP-Klasse: HN Captcha )
del.icio.us - Readster - Lycos - Alltagz - Folkd - Wong - Wikio - Newstube - DIGG
Stimmen Sie ab für geoAddress::WordPress-Plugin für Google-Maps:
|
Dieser Eintrag wurde mit: 7.38 Punkten (von 16 Stimme(n) insg.) bewertet.
|
Aber ich finde nicht die Option, um die Anzeige der Adressleiste zu ändern.
Ich möchte, dass lediglich der Name angezeigt wird und sonst nichts.
sorry für die späte Reaktion, aber ich war ein paar Tage nicht @home ;)
Die Anzeige der Adressliste kannst du im Moment nur direkt im Script ändern.
Datei: inc/mapDisplayHead.php
Zeile: 37
=> $gm->SetSideClick(".......
Hier wird die Ausgabe der Einträge _zusammengebaut_
Werde mir das für das nächste Update aber notieren
=> Admintool Ausgabe der Liste festlegen.
Wenn geoAdress aktiviert ist kommt es bei Eingabe von Antworten zu folgender Fehlermeldung und die Antworten werden nicht übernommen:
Warning: urldecode() expects parameter 1 to be string, array given in /var/www/virtual/...../.../htdocs/wp-content/plugins/geoAddress/inc/chk_xss.php on line 17
Warning: urldecode() expects parameter 1 to be string, array given in /var/www/virtual/....../..../htdocs/wp-content/plugins/geoAddress/inc/chk_xss.php on line 17
Warning: urldecode() expects parameter 1 to be string, array given in /is/htdocs/wp-content/plugins/geoAddress/inc/chk_xss.php on line 17
Warning: urldecode() expects parameter 1 to be string, array given in /is/htdocs/wp-content/plugins/geoAddress/inc/chk_xss.php on line 17
http://www.celtic-rock.de/links/celtic-folk-rock-event-locations-map
Hast Du vielleicht eine Idee oder kann es mit der letzten Meldung zusammen hängen?
Leider hatte sich in der aktuellen Version 1.5 eine veraltete Version der Datei chk_xss.php eingeschlichen.
Siehe: http://wp.php-guru.de/26/fehler-in-datei-chk_xssphp/
zu 2. Ansicht ändern
Siehe: http://wp.php-guru.de/27/ansicht-des-info-eintrags-in-der-karte-aender
n/
Warum nun allerdings die Adressliste nicht angezeigt wird kann ich dir so nicht sagen, bislang hat es meines Wissens überall funktioniert ;-)
Wie willst du sie denn anzeigen lasse, mit dem Sidebar-Widget, oder unter der Karte?
Wenn 2. sende mir mal deine erstellte Seite zur Ausgabe der Karte per Mail.
Meine Mailadresse findest du hier:
http://wp.php-guru.de/impressum/
Moin moin
Klasse plugin auch jetzt schon.
Man könnte damit prima eine kommerzielle Site zur Objektvermietung bauen. :-)
...
Ein klitzekleines Manko hätte ich:
Wenn ich die Seite mit der Karte öffne, passiert es gelegentlich, dass a) nicht alle Punkte auf der Karte gefunden werden ("location not found, ....") und b) der kartenausschnitt relativ....weit verrutscht. Statt des Großraums KölnBonn sehe ich einen Ausschnitt aus den nördlichen USA. Lässt sich das irgendwie beseitigen? Würde das PlugIn gern einem Kunden vorstellen, da wäre es hinderlich, wenn beispielsweise für eine Filialübersicht auf einmal ein Kartenausschnitt vom anderen Ende der Welt erscheint...!?
Freue mich über jede Antwort!
Do you have instruction in English?
I install this plug-in and I do not know how to start using it.
BTW I expecting a lot from this plug-in ...
Regards,
Marco
leider habe ich aber genau das gleiche Problem wie Sven. Manchmal passiert es, dass die Map komischerweise komplett nach San Francisco verrutscht und die eingegebenen Adressen nicht gefunden werden. Ich könnte mir vorstellen, dass das an der Fülle der Adressen liegt. Ich hab knapp 30 Adressen eingepflegt, die alle im relativen Umkreis zueinander liegen. Vielleicht sind das einfach zu viele Anfragen auf einmal?
http://wp.php-guru.de/
Sohbet Konya
Wer kann mir helfen?
praxis@dres-harms.de
selber konnte ich den fehler nicht finden. vieleicht kann mir jemand weiterhelfen.
Hat dafür schon jemand eine Lösung gefunden?
Gruß Marco Musielak
ist es ja ziemlich still geworden, kommentieren schaffe ich da auch nicht (wo kann ich mich regisitrieren?) Deshalb hier meine Frage: Hat jemand das oben beschriebene Problem gelöst, dass manche Adressen manchmal nicht eingezeichnet werden und die Karte (falls eben keine Adresse gefunden wird) in den USA landet? Falls nicht muss ich ich mal dahinter klemmen, brauchte das feine Plugin unbedingt, und das ist im Moment der einzige Haken. Oder kennt jemand Alternativen? Oder gibt es vielleicht doch noch eine Chance, dass das Teil weiterentwickelt wird? Bin für alle Hinweise und Rückmeldungen dankbar...
| RSS | Alle Abonnements sehen |
|
Was ist RSS? | |
| Yahoo! |
|
| MEIN MSN |
|
| Bloglines |
|
| Newsletter | |
| Followen Sie uns bei Twitter! |



















dein Plugin macht einen sehr guten Eindruck.
Aber ist es möglich html in das Infofenster zu integrieren? Das beispielsweise die Strasse einen Link darstellt, oder der Name.
Und wie kann ich den Copyrightverweise (GeoAddress 1.0.3 © 2007 by cp...) an einer anderen Stelle anzeigen? Am besten unter der Karte, da er in der jetzigen Form in meine Sidebar hinein läuft.