WordPressで色々(その2)

その1の下に天気と気温を表示。
相変わらずWordPressでやる必要は無し。
OpenWeatherMapの登録手順は省略。

サーバーに

<?php
  if($_SERVER["REQUEST_METHOD"] == 'POST') {
    $req = 'https://api.openweathermap.org/data/2.5/weather?units=metric&lang=ja';
    if (isset($_GET['lat']) && isset($_GET['lon'])) {
      $req .= '&lat=';
      $req .= $_GET['lat'];
      $req .= '&lon=';
      $req .= $_GET['lon'];
    } else {
      $req .= '&q=Tokyo';
    }
    $res = file_get_contents($req . '&appid=********************');
    echo $res;
  }
?>

というようなPHPを置き、ブラウザから緯度経度を取得してXMLHttpRequestで呼び出して表示。

unitsmetricを指定して摂氏
langjaを指定して日本語
lat緯度
lon経度
q緯度と経度のパラメータが無かった場合にTokyoを指定
appidAPIキー

OpenWeaherMapのAPIはXMLHttpRequestで直接呼び出せそう(試してはいない)だけど、APIキーを隠す目的でサーバー経由での呼び出し。
北に8kmぐらい離れた場所にある都市名が表示されたので、緯度経度を日本測地系に演算する様にしてみて様子見。
最近は市外に出ていないので、他の都市で正しく表示されるかどうかは未確認。

関連記事

WordPressで色々(その1)
WordPressで色々(その3)