Wie wird das Wetter?
Diese Frage in Deinem Blog zu beantworten ist eigentlich ganz einfach.
Du brauchst dazu die API von Google und ein wenig PHP.
Aber lies mal weiter, dann siehst Du wie es funktioniert.
Zuerst brauchst Du wie immer die Datei functions.php. Falls sie in Deinem aktiven Thema nicht existiert, kannst Du sie einfach anlegen. Schreib nur in die erste Zeile <?php und in die letzte Zeile ?>. Dann fügst Du folgende Funktion ein. Dies ermittelt das aktuelle Wetter und das der kommenden 4 Tage. Zusätzlich bindet es einen ShortCode ein, damit die Abfrage leichter in WordPress angezeigt werden kann.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | //Google Weather function guru20_SC_Wetter($atts) { //Attribute ermitteln extract(shortcode_atts(array("adresse" => 'Salzburg+Austria', "language"=>"de"), $atts)); $adresse = str_replace(" ", "+", $adresse); //API von Google abfragen $xmlData = simplexml_load_string(utf8_encode(file_get_contents("http://www.google.com/ig/api?weather=".$adresse."&hl=".$language))); //Wetter-Daten zusammenstellen $wetter = array(); //allgemeine Infos $wetter['stadt'] = $xmlData->weather->forecast_information->city->attributes()->data; $wetter['datum'] = $xmlData->weather->forecast_information->forecast_date->attributes()->data; $wetter['zeit'] = $xmlData->weather->forecast_information->current_date_time->attributes()->data; //aktuelles Wetter $wetter[0]['zustand'] = $xmlData->weather->current_conditions->condition->attributes()->data; $wetter[0]['temperatur'] = $xmlData->weather->current_conditions->temp_c->attributes()->data; $wetter[0]['luftfeuchte'] = $xmlData->weather->current_conditions->humidity->attributes()->data; $wetter[0]['wind'] = $xmlData->weather->current_conditions->wind_condition->attributes()->data; $wetter[0]['icon'] = 'http://www.google.com'.$xmlData->weather->current_conditions->icon->attributes()->data; //Vorhersage $i = 1; foreach($xmlData->weather->forecast_conditions as $weather) { $wetter[$i]['wochentag'] = $weather->day_of_week->attributes()->data; $wetter[$i]['zustand'] = $weather->condition->attributes()->data; $wetter[$i]['tiefsttemperatur'] = $weather->low->attributes()->data; $wetter[$i]['hoechsttemperatur'] = $weather->high->attributes()->data; $wetter[$i]['icon'] = 'http://www.google.com'.$weather->icon->attributes()->data; $i++; } //aktuelles Wetter $rVal= "Das aktuelle Wetter in ".$wetter['stadt'].":<br />\n". $wetter['zeit']."<br />\n". $wetter[0]['zustand']."<br />\n". "Temparatur: ".$wetter[0]['temperatur']."°C<br />\n". "Luftfeuchtigkeit: ".$wetter[0]['luftfeuchte']."°C<br />\n". "Wind: ".$wetter[0]['wind']."°C<br />\n". "<img src=\"".$wetter[0]['icon']."\" alt=\"".$wetter[0]['zustand']."\" /><br />\nVorhersage:<br />\n"; //Vorhersage for($i=1; $i < = 4; $i++) { $rVal.= $wetter[$i]['wochentag']."<br/>\n". $wetter[$i]['zustand']."<br />\n". "min. ".$wetter[$i]['tiefsttemperatur']."°C | max. ".$wetter[$i]['hoechsttemperatur']."°C<br />\n". "<img src=\"".$wetter[$i]['icon']."\" alt=\"".$wetter[$i]['zustand']."\" /><br />\n"; } //Wetter zurueckgeben return $rVal; } //Hook fuer ShortCode verwenden add_shortcode('wetter', 'guru20_SC_Wetter'); |
Das ganze sieht dann so aus (Natürlich nur wenn Du denn ShortCode wetter eingefügt hast).
Das aktuelle Wetter in Salzburg, Salzburg:1970-01-01 00:00:00 +0000
Bewölkt
Temparatur: 11°C
Luftfeuchtigkeit: Luftfeuchtigkeit: 47 %°C
Wind: Wind: N mit 6 km/h°C

Vorhersage:
Do.
Vereinzelt Regen
min. 4°C | max. 14°C

Fr.
Meist sonnig
min. 6°C | max. 21°C

Sa.
Klar
min. 9°C | max. 25°C

So.
Meist sonnig
min. 14°C | max. 27°C

Weitere Posts zu diesem Thema
- WordPress, ShortCodes und Google Maps – und Deine Posts haben was davon

Warum sollten wir überhaupt Google Maps in unserem Blog verwenden. Ausser um unsere Adresse anzuzeigen? Das ganze sieht aber anders aus, wenn wir mit [...] - Wie konvertiere ich eine Adresse in Längen- und Breitengrad

Auf dieses Problem bin ich gerade eben, beim Erstellen eines neuen Themes für WordPress gestossen. Ich habe eine Adresse oder einen Ort und will ganz [...] - Einen Shortcode im WordPress-Theme und nicht im Post verwenden
Das hat mich jetzt ein paar Tage beschäftigt genervt. Innerhalb eines Posts kann man einen ShortCode ja relativ leicht verwenden. Aber wie kann ich di [...] - Inspiration “Schlechtes Wetter”

Ja, ich weiß schlechtes Wetter gibt es nicht, nur die falsche Kleidung. Aber gerade viele Photographen haben Angst... vor schlechtem Wetter, besonder [...] - Einen ShortCode verwenden um ein Inserat im Post anzuzeigen [Code Poem #28]
Ich verwende AdSense in meinem WordPress Blog. Gibt es eine einfache Möglichkeit, während des Schreibens eine Anzeige einzufügen? Ja die gibt es! Wir [...]




Momentan sind 0 Benutzer, 0 Gäste & 0 Crawler online.
Seit 2007 wurden 1090 Posts veröffentlicht & kein Post wird erscheinen.
Es wurden 4547 Kommentare geschrieben & 216 TrackBacks gesetzt.
Es existieren zwei Antworten zu diesem Post
schrieb am 9. 5. 2011 um etwa 21 Uhr:hallo! wetter ohne plugin, das ist echt klasse. da hat sich aber ein kleiner fehler eingeschlichen der aber erstmal alles zum absturz bringt... falsch: for($i=1; $i < = 4; $i++) { korrekt: for($i=1; $i <= 4; $i++) { danke!
schrieb am 9. 5. 2011 um etwa 22 Uhr:nachtrag: da stimmt so einiges nicht mit hochkommas etc und es läuft nur mit allow_url_fopen = On. geht das auch ohne, weil das ist ja ein erhöhtes sicherheitsrisiko?