Plugin für Google-Wetterdaten in Joomla

wetter-bspFür ein Kundenprojekt haben wir vor einiger Zeit eine einfache Wetteranzeige gesucht. Vorhandene Lösungen waren überladen und mit Werbung bzw. Links versehen. Google bietet Wetterdaten als XML-Datei an. Somit ist die Integration in ein kurzes PHP-Script sehr einfach möglich. Kurzerhand haben wir uns entschieden, dass Ganze in ein Joomla-Plugin zu verfrachten und als „Open Source" frei zu geben.


icons-modern-simpleGoogle-Wetter - jetzt auch als Modul

Das Plugin ist denkbar einfach und flexibel. Das Zip-Paket wird über den Installations-Manager von Joomla installiert. Danach muss das Plugin "googleWeather" noch aktiviert werden. Zusätzlich lässt sich die Ausgabesprache (DE,EN,FR usw.) bestimmen und festlegen ob Wetter-Symbole angezeigt werden sollen.

Nun kann an einer beliebigen Stelle in einem Content-Text das Plugin aufgerufen werden, indem dort der String
klammern1 (in geschweiften Klammern)
einfügt wird. Die Ausgabe erfolgt in einem DIV-Container mit der Klasse „plg_weather". Dadurch lässt sich die Ausgabe über das CSS-Template flexibel anpassen.


Beispiele

Das Wetter in Sydney (Australien)

Partly CloudyPartly Cloudy (64 oF • 18 oC)
Humidity: 56%
Wind: N at 10 mph

klammern2

Das Wetter in Freiburg mit Vorschau und Layout

OvercastOvercast (42 oF • 6 oC)
Humidity: 98%
Wind: SW at 22 mph
Thu 42 ⇒ 62 oF » Chance of Rain «
Fri 42 ⇒ 64 oF » Chance of Rain «
Sat 46 ⇒ 69 oF » Clear «

klammern3

Wichtig: Damit das Plugin funktioniert, sollte die Option "allow-url-fopen" in der PHP.INI aktiviert sein. Alternativ versucht das Plugin die CURL Erweiterung von PHP zu nutzen. Schließlich muss googleWeather eine XML-Datie von einer externen Quelle holen können.

Version 1.5 bietet 3 verschiedene Iconsets an, hat neue Standardicons und individuell anpassbare Fehlermeldungen.

Version 1.4 renchnet auch in der Wettervoschau die Maßeinheit für die Temperatur um, wenn gewünscht.

Version 1.3 versucht Probleme bei der Kodierung exotischer Zeichensätze zu umgehen.

Version 1.2 unterdrückt auf Wunsch alle Fehlermeldungen. Beim aktuellen Wetter kann alternativ nur Celsius oder nur Fahrenheit ausgegeben werden.

Version 1.1 bietet bei Bedarf eine kleine Vorschau auf die kommenden drei Tage an.

Die Version 1.0 greift notfalls auf eine eigene Routine zum parsen der XML Dateien zurück. Somit sollte das Plugin jetzt auch mit PHP4 funktionieren. Außerdem kann googleWeather nun automatisch die Sprache aus dem Seitenkontext erkennen. Dadurch wir der Einsatz auf mehrsprachigen Seiten möglich.


joomla-multimediagoogle-weather

Allan Walker stellt unser Google Wetter in seinem neuen Buch vor ;-)

Gerade bekommen wir eine nette Mail von Allan Walker - Autor von dem (englischsprachigem) Buch: Joomla! 1.5 Multimedia - Build media-rich Joomla! web sites by learning to embed and display Multimedia content. Er hat unser Google Wetter mit in sein Buch aufgenommen. Danke Allan - ein schönes Kompliment!


Dies ist das erste Derivat aus unserer Arbeit, dass wir als „Open Source" veröffentlichen. Wir verstehen es als Dankeschön an die Comunity, deren Produkte wir täglich nutzen. Über Fehlermeldungen, Kommentare und Verbesserungsvorschläge würden wir uns deshalb natürlich freuen.

 

Kommentar hinzufügen

E-Mail: Für Antworten. Wird nicht angezeigt.
  Sicherheitscode zur Prüfung. Nur Kleinschreibung. Keine Leerzeichen.
Kommentare (210)
Arabic language
14. Oktober 2009
Tomas
Hi all
Problem with arabic language is in mod_googleweather.php line 28
$weather_language = 'ar';
just erase line or add //
Only in Arabic?
13. Oktober 2009
Nick Steinbauer
i installed the module, it seems to be working but the language is set in arabic and i cannot change it. The autodetect won't work, and the language name won't work if i turn off the auto-detect. I've tried every language, and no matter what it won't change from arabic.

Thanks

Nick
Re: encoding - solution
13. Oktober 2009
DirkH
$wxml = iconv("ISO-8859-2","utf-8",$wxml);

Hi Tom,

Thanks for your hint. It pointed me to the right solution. Unfortunately the encoding differs from language to language and PHP isn't able to detect codepage of a string correctly.

So i added array with popular languages and inserted the following line into version1.3.
$wxml = mb_convert_encoding($wxml,'UTF-8', $charset);

iconv() should work too. But since the command is only available to php >5.0 i decided to use mb_convert_encoding.
Re: Question about your plug-in
13. Oktober 2009
Joest Feenders
Hi Harry,
Path to the icon folder - but that´s not your problem.
Google just does´nt suply weather-information of westernburg (where the hell ...) Try next bigger city and just put westernburg on the frontend. Test with this url (change location):
http://www.google.com/ig/api?weather=westernburg&hl=de
Joest
Re: Re: Question about your plug-in
12. Oktober 2009
Harry
Sorry!!!!!

The proper link is http://mghandel.de


BTW, nice captcha! Where did you get is? ;)
Re: Question about your plug-in
12. Oktober 2009
Harry
Joest,
Here is the link: http://mdhandel.de

What path are talking about? :)
Encoding - found solution
12. Oktober 2009
Tomas
Hello
Fisrt I have to say that I found this module to be the best solution for my website. Thanks for nice work Joest.
I ´ve had the same problem with encoding - but this helped - change row 40 in mod_googleweather.php to
$wxml = iconv("ISO-8859-2","utf-8",$wxml);
This works for me in Slovak language.
Re: Question about your plug-in
11. Oktober 2009
Joest Feenders
Hi Harry,
send your client to us ;-)
Serious - did you check the path?
Sent a link to your installation for better help
Joest
Question about your plug-in
11. Oktober 2009
Harry
Just installed your excellent plug-in for my client in Germany. Everything works fine except one thing - the weather icon shows as question mark.
What am I doing wrong?
Thank you in advance!
Re: Problème mineur
08. Oktober 2009
Joest Feenders

Hi René,
sorry, my understanding of francais is to poor...
All i can see on you site - use the automatic language detection or set it to france. The module´s language education is better than mine (even so i did do france at school, but - to long ago, hardly ever practiced) - module does speak france ;-)
(for better hints and help - please write in english)


joest

Problème mineur
08. Oktober 2009
René Arbour
Félécitations pour le module et merci de nous aider.
Je suis est nouveau et mon site: http://famille-arbour.com en opération depuis 3 mois.
Comment faire pour ajouter 2 ou 3 villes Comme L'exemple de Sidney et Berlin.
Re: Problem in validating allow_url_fopen.
02. Oktober 2009
DirkH
Hi Juan,

you are right. But your bugfix will not work under all circumstances. According to the php documentation ini_get returns the value of the ini-option. Only if the option is "FALSE" or "OFF" it returns a empty string. My php-version returns "1" instead of "on".

The correct code should be
if (ini_get('allow_url_fopen') != '') {

I changed it in the current version.
Thanks for your hint.
Problem in validating allow_url_fopen.
01. Oktober 2009
Juan
Line 31 on mod_googleWeather.php reads:

if (ini_get('allow_url_fopen')) {

This always turns out to be true... because it returns "on" or "off"...

I changed it to :
if (ini_get('allow_url_fopen') == 'on') {

Now it really detects if url_fopen is enabled or not.

Greetings
(I am using PHP 5.2.10)
Re: encoding
22. September 2009
Joest Feenders
hi sushismb,
sorry - no, not realy... i admit - only limited time to dive deeper into this encoding problem. still on our schedule so.
encoding problems -> japanese and cyrillic language...
anybody outthere with THE helpfull hint?
joest
encoding
21. September 2009
sushismb
Any update on the encoding problem?
Mehrere Städte auf einer Seite?
20. September 2009
Harald
Ich habe die Lösung: einfach einen Trennstrich einfügen.
Danke
Harald
Mehrere Städte auf einer Seite?
20. September 2009
Harald
Hallo,
erst einmal mein Dank für dieses Modul. Es funktioniert auch gut bei mir. Jetzt habe ich aber eine Frage: besteht auch irgendwie die Möglichkeit, mehrere Städte auf einer Seite gleichzeitig anzeigen zu lassen? Ich hatte es versucht, aber dann wurde nichts mehr angezeigt, auch nicht die erste Stadt.
Vielen Dank
Harald
great plugin, thanks!
15. September 2009
Mark
I didn't even understand German and I STILL understood your instructions!

Thanks for this great job!
Re: Doppelpunkt
13. September 2009
Joest Feenders

Hi Michael1965,


ja - in Zeile 59 vor dem Ende der Fettung den Doppelpunkt einfügen.  (Achtung - nicht wundern, in den Kommentaren werden alle Tags gelöscht, darum fehlt in Deinem Post das /b)


Joest

Re: Re: Re: Re blank page
13. September 2009
Joest Feenders

Hi Sarah,


you said "I was using your module successfully on another template and another Apache windows (xampp) server " Make shure you use an uptodate xampp. Still getting errors? Please sent me your php-info via mail. I´d like a look.


Joest

 

Wetter in Hamburg

Light rainLight rain 14 oC
Humidity: 88%
Wind: E at 9 mph