Agentfilter

Aus Contao Community Documentation


Inhaltselemente abhängig vom User Agent anzeigen.


Erweiterungs-Übersicht
Name des Entwicklers Helmut Schottmüller (hschottm)
Entwickler Webseite http://www.aurealis.de
Version der Erweiterung 1.1.0
Kompatibilität mit Contao Version 2.9.0 - 2.10.0
Link zum Extension Repository http://www.contao.org/erweiterungsliste/view/agentfilter.de.html
Den Entwickler unterstützen http://aurealis.de/spenden.html


AgentFilter

Webbrowser übertragen ihre Identität in Header-Zeilen bei http-Anfragen (Requests) an den Server. Eine Beschreibung hierzu findet sich in RFC 1945. Diese Zeichenkette, häufig auch User Agent genannt, beinhaltet z.B. den Namen des Webbrowsers, das Betriebssystem, auf dem der Webbrowser eingesetzt wird und einiges mehr. Beispiele für User Agents sind z.B.

 Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)
 Mozilla/5.0 (iPhone; U; XXXXX like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A477d Safari/419.3
 Mozilla/5.0 (Windows NT 6.1; U; ru; rv:5.0.1.6) Gecko/20110501 Firefox/5.0.1 Firefox/5.0.1


AgentFilter erlaubt es, eine Teilzeichenkette innerhalb des User Agent zu suchen und abhängig von diesem Ergebnis ein Inhaltselement anzuzeigen oder zu verstecken.

Damit lassen sich dann z.B. Betriebssystem-abhängige Inhalte oder Downloads anzeigen. Zusätzlich ist es möglich, in einem Seiten-Layout nach einem bestimmten User Agent zu suchen und für diesen ein benutzerdefiniertes Seitentemplate zu verwenden.

Filtern von Inhaltselementen

Im Feld User agent Suche gibt man einen einfachen Suchbegriff an, nach dem gesucht werden soll. Der Suchbegriff wird als regulärer Ausdruck ausgewertet. Einfache Suchbegriffe werden dabei nicht kontextsensitiv behandelt, d.h. es wird nicht zwischen Groß-/Kleinschreibung unterschieden. Bei regulären Ausdrücken wird die in der PHP-Funktion preg_match bekannte Notation verwendet. Im hier angegebenen Beispiel ist die Suche erfolgreich, wenn der User Agent entweder ipad, iphone oder ipod beinhaltet.

User Agent Filter für Content-Elemente

Im Feld Aktion legt man fest, was passieren soll, wenn die Suche im User Agent erfolgreich verlief. Im obigen Beispiel würde also das Inhaltselement nicht auf iPhones, iPads oder iPod Touches angezeigt werden.

Filtern von Seitenlayouts

In den Experteneinstellungen eines Seitenlayouts kann man ebenfalls im Feld User agent Suche einen Suchbegriff eingeben. Für den Fall, dass der Suchbegriff gefunden wird, hat man die Möglichkeit, ein Seitentemplate seiner Wahl statt des regulären Seitentemplates zu verwenden.

User Agent Filter für Seitenlayouts

Diese Möglichkeit kann interessant sein, wenn sich ein bestimmtes User Agent spezifisches Verhalten nicht durch ein- oder ausblenden von Inhalten erreichen lässt. Im vorliegenden Beispiel wird z.B. ganz gezielt ein Seitentemplate für Mobile Endgeräte statt eines regulären Seitentemplates verwendet.

Lizenz

AgentFilter steht unter der LGPL-Lizenz

--Hschottm 17:58, 13. Aug. 2011 (CEST)

Ansichten
Meine Werkzeuge

Contao Community Documentation

Chuck Norris programmiert kein PHP, er diktiert das Ergebnis. Den Rest macht der Editor aus Angst.

Stefan Lindecke
Navigation
Verstehen
Verwenden
Entwickeln
Verschiedenes
Werkzeuge