Anleitungen

Eine Zeitzonenauswahl bauen, die standardmäßig die Zeitzone des Besuchers vorschlägt

Sich durch eine Liste von Zeitzonennamen zu scrollen, um die eigene zu finden, ist ein kleines Ärgernis, das ein sinnvoller Standardwert für fast alle beseitigt.

Die Zeitzone erkennen

Der Endpunkt /v1/ip liefert direkt ein Feld timezone, sodass Sie mit einem einzigen Aufruf sowohl den Standort als auch die Zeitzonenkennung zusammen erhalten, ohne separaten Aufruf des Zeitzonen-Endpunkts.

GET /v1/ip?ip=203.0.113.88
{
  "status": "ok",
  "ip": "203.0.113.88",
  "version": 4,
  "found": true,
  "country": "Australia",
  "country_code": "AU",
  "region": "New South Wales",
  "city": "Sydney",
  "postcode": "2000",
  "lat": -33.8688,
  "lon": 151.2093,
  "timezone": "Australia/Sydney",
  "asn": 7890,
  "org": "Example Networks"
}

Die Auswahl vorbelegen

Setzen Sie den timezone-Wert aus dieser Antwort als ausgewählte Option in Ihrem Einstellungsformular, wenn es zum ersten Mal gerendert wird, serverseitig, bevor die Seite den Besucher erreicht. Das funktioniert gleich, ob die Auswahl ein Dropdown mit Standard-Zeitzonenkennungen oder eine durchsuchbare Liste ist, da der vorausgewählte Wert nur eine Standard-Kennung als Zeichenkette ist, wie die im Beispiel.

Ein zweites Beispiel: mehrere Personen in einer Buchung

Ein Buchungsformular für Reisen oder Veranstaltungen, das Angaben zu mehr als einem Reisenden erfasst, profitiert davon, die Zeitzone einmal für die Person zu erkennen, die das Formular ausfüllt, und sie dann als gemeinsamen Standardwert für jeden Reisenden-Eintrag zu übernehmen, statt sie für jeden Reisenden erneut abzufragen. Jedes Feld eines Reisenden bleibt einzeln bearbeitbar, da an einer Gruppenbuchung oft Personen teilnehmen, die aus einer anderen Zeitzone kommen als die Person, die das Formular ausfüllt.

Den Besucher den Wert überschreiben lassen

Eine Zeitzonenauswahl gibt es gerade deshalb, weil die IP-basierte Erkennung nicht immer stimmt, besonders bei einem Besucher mit VPN oder auf Reisen. Lassen Sie das Feld immer bearbeitbar und speichern Sie, was der Besucher ausdrücklich auswählt, vorrangig vor dem erkannten Standardwert, ohne seine Wahl bei einem späteren Besuch erneut zu erkennen und zu überschreiben.

Ein häufiger Fehler, den Sie vermeiden sollten

Gehen Sie nicht davon aus, dass ein großes Land einer einzigen Zeitzone entspricht, nur weil Ihre Beispielabfragen zufällig eine einzige saubere Kennung zeigen. Bei Ländern, die sich über mehrere Zeitzonen erstrecken, wird die spezifische Zeitzone zurückgegeben, die zum tatsächlichen Standort des Besuchers passt. Genau dieses Detail macht die IP-basierte Erkennung nützlicher als eine Schätzung auf Länderebene, aber nur, wenn Ihr Formular der zurückgegebenen spezifischen Kennung vertraut, statt sie durch eine einzige Standard-Zeitzone für das ganze Land zu ersetzen.

Einmal erkennen, nicht bei jedem Besuch

Führen Sie die Erkennung einmal durch, wenn ein Besucher zum ersten Mal sein Konto oder seine Einstellungen einrichtet, und speichern Sie das Ergebnis. Sie bei jeder Anmeldung erneut auszuführen, würde Anfragen verschwenden, ohne einen Mehrwert zu bringen, denn eine bewusst gewählte Zeitzone sollte bestehen bleiben, bis der Besucher sie selbst ändert.

Wenn Sie bereits konkrete Koordinaten statt einer IP-Adresse haben, etwa eine Lieferadresse, die ein Besucher eingegeben hat, ermittelt /v1/timezone die Zeitzone direkt aus Breiten- und Längengrad und kann auch einen bestimmten Zeitstempel entgegennehmen. Das ist nützlich, wenn Sie die Zeitzone so kennen müssen, wie sie zu einem bestimmten Zeitpunkt galt, und nicht nur, wie sie jetzt gilt.

Was es kostet

Eine einzige Abfrage pro neuem Konto oder Einrichtung der Einstellungen ist eine Anfrage. Selbst ein Dienst, bei dem sich täglich stetig neue Nutzer registrieren, bleibt mit dieser Funktion allein deutlich innerhalb der 2.500 kostenlosen Anfragen pro Tag, die in jedem Schlüssel enthalten oder von einer einzelnen Adresse auch ohne Schlüssel verfügbar sind.

Einen sinnvollen Standardwert zu erkennen und sich dann zurückzuhalten, ist die richtige Balance für eine Zeitzonenauswahl. Alle Felddetails finden Sie in der Dokumentation zur IPv4-Abfrage und der Dokumentation zur Zeitzonenabfrage.