Frisch notiert!

Die neusten Artikel aus unserem Blog.

Browser- und Betriebssystemerkennung über Javascript (WP Plugin)

Zuletzt aktualisiert am 18/08/2016 von Adrian Lambertz
1 Kommentar
Webdesign, Wordpress
/ Webdesign / Wordpress / 1

Vor kurzem stießen wir auf einem Beitrag von wpbeginner.com (Link), der erklärt wie man direkt über WordPress mit PHP dem Body-Tag passende Browser und OS Klassen vergibt. So weit so gut.  Es gibt jedoch einen kleinen, aber nicht so feinen Nachteil bei dieser Methode. Sie ist nicht Caching-fähig.

Das heisst, dass sobald Caching Tools wie Cachify oder W3TC mit im Spiel sind, diese Methode nicht mehr funktioniert, da das Generieren des Codes über WordPress/PHP übersprungen wird. Caching Plugins erstellen nämlich beim ersten Aufruf ein statisches HTML Abbild der Seite und speichern sie ab, um direkt auf diese zuzugreifen. Das spart Ressourcen und Ladezeiten.

Ist der erste Besucher nun beispielsweise mit dem Internet Explorer 8 unterwegs, wird das HTML Dokument mit der IE8 und Windows Body-Klasse abgespeichert. Besucher, die dann später selbst mit einem anderen aktuellen Browser die Seite besuchen, haben u.U. Darstellungsprobleme, da das CSS der IE8 Klasse greift. Noch schlimmer wird es z.B. mit einem iPhone. So würden mobiloptimierte CSS-Styles greifen – selbst wenn man mit einem aktuellen Desktop Browser die Seite ansurft.

Die Lösung

Aus diesem Grund habe ich ein kleines Javascript geschrieben, das dynamisch die Browser und Betriebssystemklassen in den Body-Tag schreibt.

Da es pures Javascript ist, benötigt man kein Framework wie jQuery o.ä. und es ist auch Caching-fähig.

body-classes

Dieses Javascript habe ich direkt in ein kleines WordPress Plugin gepackt, welches Ihr leicht in euer WordPress installieren könnt. Dieses Plugin bietet keine Optionen, sondern bettet einfach nur das Javascript-File in den Code ein.

Das Javascript File ist mit 512 Bytes sehr leichtgewichtig.

Bei Fragen, Problemen, Hinweisen oder Verbesserungsvorschlägen hinterlasst einfach einen Kommentar!

Download

Version 0.1: Download

Wissenswertes

Das Javascript vergibt in Version 0.1 folgende Klassen:

Browser:

  • chrome
  • safari
  • firefox
  • msie
  • opera

Verschiedene Versionen, wie z.B. des MSIE werden in zukünftigen Updates nachgereicht.

Betriebssystem:

  • windows
  • osx
  • linux
  • unix

Geräte:

  • iphone
  • ipad

Weitere Geräte werden ebenfalls in zukünftigen Updates nachgereicht.

Adrian Lambertz

Seit 2010 bin ich nun schon bei Pixelbar mit dabei. Zuerst als Auszubildender und nach erfolgreichem Abschluss meiner Ausbildung als Frontend-Entwickler. Ohne Musik und Kaffee kann ich nicht leben, daher konsumiere ich beides während der Arbeit praktisch durchgehend :). Daneben liebe ich WordPress - darauf habe ich mich spezialisiert.

Weitere Beiträge von adrian anzeigen

1 Kommentar

  1. Hey Adrian,
    danke für das PlugIn erstmal. Kurze frage dazu von mir: Werden die Änderungen mit dem Plugin dann weiterhin über das CSS gesteuert? Wenn ja wie spreche ich die entsprechenden befehle aus?

    mal zum beispiel: .h2:safari{display:none;} oder wie ist’s gedacht?

    beste grüße
    ronny

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert