WordPressで天気予報を表示してみる
2014/1/17|
Category:
今回は、Wordpress(PHP)で天気予報を取得・表示する方法を紹介します。
Livedoor Weather Hacksでは取得できない降水確率も取得することができます。
STEP 1-1
まずは、天気を取得したい都道府県のxmlを以下のリンクから探しましょう。
気象庁の天気予報情報を XML で配信
今回は、一番上のJapan Weather Forecast xml (日本お天気予報)の配信リストから探して下さい。
STEP 1-2
次は、より細かい地域に絞っていきましょう。
先ほどのxmlを見てみると、中に下記のようなarea要素がいくつかあると思います。そのarea要素の中で取得したい地域のarea要素は何番目に来ているのか数えて下さい。
<area id="地域名">...</area>
その数から1を引いた数と、xmlのurlが天気を取得する上で必要となります。
STEP 2-1
準備が終わったら、コードを編集していきましょう。
まずは、以下をfunction.phpに記述してください。尚、ハイライト表示してあるxmlのurlや、地域の番号(先ほどの)は自分で編集して下さい。
※例を挙げると、埼玉南部の今日の天気はそれぞれhttp://www.drk7.jp/weather/xml/11.xml、1、0となります。
function GetWeather() { $tmp_url = "xmlのurl"; $tmp_xml = simplexml_load_file($tmp_url); $xml = $tmp_xml->pref->area[地域番号]->info[何日後の天気を取得するか]; $title = $xml->weather; // 天気 $detail = $xml->weather_detail; // 詳細 $wave = $xml->wave; // 波 $temperature_max = $xml->temperature->range[0]; // 最高気温 $temperature_min = $xml->temperature->range[1]; // 最低気温 $rain_00_06 = $xml->rainfallchance->period[0]; // 0~6時の降水確率 $rain_06_12 = $xml->rainfallchance->period[1]; // 6~12時の降水確率 $rain_12_18 = $xml->rainfallchance->period[2]; // 12~18時の降水確率 $rain_18_24 = $xml->rainfallchance->period[3]; // 18~24時の降水確率 print "出力内容"; }
STEP 2-2
次に、表示内容を決めましょう。
先ほどのコードに登場した以下の部分を編集していきます。
print "出力内容";
天気や最高気温等を表示したい場合は、以下を参考に変数を記述して下さい。又、それらに加えて文字やhtmlタグを組み合わせても構いません。ただし、htmlタグ等で“や\のような特殊文字を使う場合には、その文字の手前に\を入力する必要があるので注意して下さい。
$title // 天気 $detail // 詳細 $wave // 波 $temperature_max // 最高気温 $temperature_min // 最低気温 $rain_00_06 // 0~6時の降水確率 $rain_06_12 // 6~12時の降水確率 $rain_12_18 // 12~18時の降水確率 $rain_18_24 // 18~24時の降水確率
print "$title"; // 天気のみ print "天気: $title"; // 文字を組み合わせてもOK
STEP 3
最後に、数値を表示したい場所に以下を記述してください。
<?php GetWeather(); ?>