Zum Hauptinhalt springen

Austragungsort-Karten

SportsPress zeigt eine interaktive Karte auf Austragungsort-Archivseiten und auf einzelnen Begegnungsseiten an, wenn der Begegnung ein Austragungsort zugewiesen ist. Die Karte wird mithilfe von OpenStreetMap-Kacheln über die Leaflet-JavaScript-Bibli…

Austragungsort-Karten

SportsPress zeigt eine interaktive Karte auf Austragungsort-Archivseiten und auf einzelnen Begegnungsseiten an, wenn der Begegnung ein Austragungsort zugewiesen ist. Die Karte wird mithilfe von OpenStreetMap-Kacheln über die Leaflet-JavaScript-Bibliothek gerendert, die im SportsPress-Kern-Plugin gebündelt ist.
​

Anzeige von Karten

Das Kartensystem verwendet einen WordPress-Action-Hook, sp_venue_show_map, der aus dem Template venue-map.php mit den Argumenten Breitengrad, Längengrad, Adresse, Zoomstufe und Kartentyp des Austragungsorts aufgerufen wird. Das OpenStreetMap-Modul (im Kern-Plugin unter includes/sportspress/modules/sportspress-openstreetmap.php gebündelt) hängt sich in diese Aktion ein und rendert die Karte.
​

Eine Karte wird nur angezeigt, wenn sowohl Breitengrad als auch Längengrad am Austragungsort gesetzt sind. Wenn Koordinaten fehlen, wird keine Karte gerendert.
​

Wo Karten erscheinen

  • Austragungsort-Archivseiten — Die Karte erscheint oben auf der Seite, wenn ein Besucher die öffentliche URL eines Austragungsorts aufruft (z. B. /austragungsort/old-trafford/).

  • Begegnungsseiten — Wenn einer Begegnung ein Austragungsort mit Koordinaten zugewiesen ist, rendert der Austragungsort-Abschnitt der Begegnungsseite eine Karte.

  • Shortcode — Der Shortcode [event_venue] enthält die Karte, wenn die Begegnung einen kartierten Austragungsort hat.

Karteneinstellungen

Kartenzeigeoptionen finden Sie unter Begegnungen > Einstellungen im Abschnitt Austragungsorte:
​

  • Austragungsort-Karte (sportspress_event_show_maps) — Kontrollkästchen zum globalen Aktivieren oder Deaktivieren der Austragungsort-Kartenanzeige. Standard: ein.

  • Typ (sportspress_map_type) — Wählen Sie die Kachelquelle:

    • Standard (ROADMAP) — Standard-OpenStreetMap-Straßenkartenkacheln von tile.openstreetmap.org

    • Satellit (SATELLITE) — Satellitenbildkacheln von ArcGIS Online (Esri World Imagery)

  • Zoom (sportspress_map_zoom) — Ganzzahliger Zoomgrad, Bereich 0–21. Standard: 15. Höhere Werte zoomen weiter hinein (Straßenebene), niedrigere Werte zoomen heraus (Kontinentebene).

Diese Einstellungen werden vom Template venue-map.php gelesen und an die Aktion sp_venue_show_map übergeben.
​

Austragungsort-Koordinaten

Koordinaten werden pro Austragungsort in der WordPress-Optionstabelle gespeichert:
​

  • Breitengrad — Gespeichert als sp_latitude im Options-Array taxonomy_<term_id>

  • Längengrad — Gespeichert als sp_longitude im Options-Array taxonomy_<term_id>

Um Koordinaten zu setzen, bearbeiten Sie den Austragungsort unter Begegnungen > Austragungsorte und ziehen Sie den Kartenmarker an den Standort des Austragungsorts, oder geben Sie dezimale Gradwerte direkt in die Felder Breitengrad und Längengrad ein.
​

Details zum OpenStreetMap-Rendering

Der Leaflet-Kartencontainer wird als 320px-hohes div gerendert, das einen Anker-Tag umhüllt, der zur entsprechenden Google Maps-Seite für die Koordinaten verlinkt. Die Karte wird mit deaktiviertem Schwenken, Touch-Zoom, Doppelklick-Zoom und Scroll-Rad-Zoom initialisiert — die Karte ist nur zur Anzeige, nicht interaktiv.
​

An den gespeicherten Koordinaten wird ein Standard-Pin-Marker platziert.
​

Für Satellitenbilder kommen Kacheln vom ArcGIS Online World Imagery-Dienst. Für den Standard-Typ (Straßenkarte) kommen Kacheln vom öffentlichen OpenStreetMap-Kachelserver.
​

Google Maps-Integration

Das SportsPress Pro-Plugin enthält ein Modul SportsPress Google Maps Integration (includes/sportspress-google-maps/). Wenn dieses Modul aktiv ist, entfernt es den OpenStreetMap-Handler aus dem Hook sp_venue_show_map und ersetzt ihn durch einen Google Maps-Iframe-Renderer.
​

Das Google Maps-Modul rendert die Karte als <iframe>, der eine Google Maps-Kachel über tboy.co/maps_embed (ein Proxy für die Google Maps Embed API) einbettet. Der Iframe ist 600×320 Pixel groß. Ein Overlay-Anker verlinkt auf die vollständige Google Maps-Seite für die Adresse.
​

Das Google Maps-Modul fügt dem Begegnungseinstellungsbildschirm keine eigenen Einstellungen hinzu; es verwendet dieselben Einstellungen sportspress_map_zoom und sportspress_map_type wie das OpenStreetMap-Modul. Es ist immer nur ein Karten-Renderer aktiv: Google Maps ersetzt OpenStreetMap, wenn das Modul geladen wird.
​

Hat dies deine Frage beantwortet?