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で呼び出して表示。
| units | metricを指定して摂氏 |
| lang | jaを指定して日本語 |
| lat | 緯度 |
| lon | 経度 |
| q | 緯度と経度のパラメータが無かった場合にTokyoを指定 |
| appid | APIキー |
OpenWeaherMapのAPIはXMLHttpRequestで直接呼び出せそう(試してはいない)だけど、APIキーを隠す目的でサーバー経由での呼び出し。
北に8kmぐらい離れた場所にある都市名が表示されたので、緯度経度を日本測地系に演算する様にしてみて様子見。
最近は市外に出ていないので、他の都市で正しく表示されるかどうかは未確認。