Browserweichen auf PHP Basis – für Safari und Chrome auf dem Mac

23. August 2010

css-weiche-thumb

Kleines Problem kurz vor Fertigstellung dieses WordPress Blogs für ein Mittelstandsportal.

Alles soweit okay, nur die Navigation machte bei der Darstellung auf einer Artikel (Post) Ansicht über die Single.php Probleme und das NUR bei Safari.

Wäre es IE gewesen, dann wäre das

1. nicht verwunderlich und

2. durch einen konditionellen Kommentar wohl schnell gelöst gewesen.

Aber bei Safari fällt die Option ja wohl weg (oder weiß da einer mehr als ich).

Also habe ich mich auf die Suche begeben und auch schnell was passendes gefunden wie man das denn über PHP und den User-Agent regeln könnte: CSS Weiche per PHP.

Hat im ersten Moment aber leider nicht geklappt, also zurück ans Reissbrett. Nach ein wenig testen (immer gut ne leere Seite mit den Basisfunktionen zu bauen und sich die Variablen auch wirklich ausgeben zu lassen) war das Problem erkannt.

Wenn man so wie ich Chrome auf dem Mac benutzt, dann kommt bei der Abfrage von

$_SERVER['HTTP_USER_AGENT'] einen STRING zurück in dem neben Chrome auch eine Safari Version drin steht … zumindest in meiner Variante (Chrome Developer Version).

Also schnell angepasst und diese Version in die Single.php eingebaut:

if(eregi(”safari”,$_SERVER['HTTP_USER_AGENT']) && !eregi(”chrome”,$_SERVER['HTTP_USER_AGENT']))

Sprich: wenn der USERAGENT “safari” enthält UND NICHT “Chrome” enthält, dann ist es eindeutig Safari und dann mach bitte XYZ (in meinem fall, gib ein div aus, mit einer eindeutiger ID die ich dann für Safari gesondert formatiere)

Kann man natürlich auch für alle anderen Browser einsetzen, in dem man die Safari gegen IE, Firefox etc. tauscht.

PS.

In einem anderen Forum kam dann noch der Hinweis, dass die Nutzung von strpos schneller sei als der Einsatz einer regex.

Soviel zu einem weiteren Beitrag aus der Reihe: durch den Arsch am Herzen operiert, aber der Patient ist wohlauf.

Hinterlasse einen Kommentar



Umfrage

  • Nutzt ihr XING weniger aufgrund von Facebook?

    View Results

    Loading ... Loading ...


Unser Newsletter

Anmelden für Facebbok & Social Media News
* Pflichtfelder



Kategorien




Tag Cloud




Auf Facebook







Links