Browserweichen auf PHP Basis – für Safari und Chrome auf dem Mac
23. August 2010
Kommentiert: 0 | Gelesen: 1483
Kategorien : PHP, Technik, Wordpress
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.
Umfrage
Loading ...
Unser Newsletter
Kategorien
Tag Cloud
Android
Arduino
Cacoo
Email Alerts Google Wave
enterprise
Facebook
facebook tabs
Facebook UI
ferengi
firefox
Formulare
fußball
fußballsprüche
fußballzitate
Goodschool
Google
Google Instant
Google Wave
Horrorskop
IE
iframes in facebook
innerHTML
ipad
Kennzahlen
Notifier Google Wave
Online Tools
Palo Altona
Projektmanagement
science fiction
sci fi
Selectbox
Social Media
sport
star trek
Tabelle
table
Tinkern
tng
Tools
Twitter
Wave
Webservices
Wireframes
Wordpress
zitate Allgemein (5)
Android OS (2)
Authentifizierung (1)
Communities (2)
CSR (1)
DRM (1)
Entertainment (4)
Events (1)
Facebook (6)
Facebook UserInterface (2)
FBML / FBJS (2)
Gadgetentwicklung (3)
Google (3)
Google Streetview (1)
Google Wave (5)
Hardware (3)
HTML 5 (1)
Information (2)
Javascript (2)
Location Based Services (1)
Mobile (1)
Online Tools (5)
Onlinemarketing (2)
Onlinemarketing Kennzahlen (1)
PHP (1)
SEM (2)
Shopping (1)
Social Media Marketing (1)
Technik (5)
Tools (2)
Tutorial (2)
Twitter (1)
Twitter API (1)
Vermarktung (1)
Website Vermarktung (1)
Wordpress (2)
WP Cumulus Flash tag cloud by Roy Tanck and Luke Morton requires Flash Player 9 or better.
Auf Facebook


