{scroll2} wird nicht mehr unterstützt. {scroll3} soll verwendet werden!
Mit dem Scroll2 Plugin kann man performante Auflistungen von Pages, Dateien und Bilder aus dem Multimediamandant und dem Standardmandant machen.
Das Plugin lädt über Ajax so viele Ergebnisse, wie es das Limit definiert. Demnach werden nie alle Ergebnisse auf einmal geliefert und somit ist auch die Ladezeit der Seite kürzer.
Aufgrund der Tatsache, dass das Plugin mit Ajax arbeitet und über das Offset die nächsten Einträge holt, ist es auch nicht möglich mit diesem Scroll Plugin eine Pagination zu bauen. Sofern eine Pagination erwünscht ist, empfehlen wir das Vorgänger Scroll Plugin, welches allerdings weniger performant ist.
Scroll2 kann man keine Variable assignen, da dieses Plugin keinen Rückgabewert liefert.
möchte man einen Vor und Zurückbutton haben, so müssen sich diese Elemente innerhalb des selben Templates in der das {scroll2} definiert ist, befinden.
Das zu ladene Template wird anstelle des {scroll2} dargestellt.
Parameter-Name | Typ | Erforderlich | Beschreibung |
query.limit | Integer | Ja |
Anzahl an Einträge die geladen und angezeigt werden sollen. |
query.type | String | Nein |
Über query.type kann man spezifischer Nachfahren, Children oder allgemein Seiten holen. |
query.order | String | Nein |
Man kann seine eigene Sortierung festlegen. Standardmäßig ist "c_date asc" festgelegt. |
query.descendant | Page | Nein |
Ist dieser Parameter gesetzt, wird ein getDescendants() von dem Page Objekt aus ausgeführt. Wird kein query.descendant oder query.children festgelegt, dann wird standardmäßig ein getPages() gemacht. |
page.children | Page | Nein |
Ist dieser Parameter gesetzt, wird ein getChildren() von dem Page Objekt aus ausgeführt. Wird kein query.descendant oder query.children festgelegt, dann wird standardmäßig ein getPages() gemacht. |
param.extra | String | Nein |
Damit kann man spezifisch Seiten holen die den übergebenen Extra Wert besitzen. z.B.: param.extra = 'extra.lang = de'. |
param.inactive | Boolean | Nein |
Sowohl aktive als auch inaktive Seiten suchen. |
param.fulltext | String | Nein |
Damit werden nur Seiten gefunden, die im Inhalt den übergebenen Text besitzen. |
lazyloading | Boolean | Nein |
Ermöglicht das Laden von neuen Seiten wenn der Inhalt im Viewbereich ist. Gleichzeitig kann man für die geladenen Elemente eine Animation festlegen. |
template | String | Ja |
Das Template muss im Skin Verzeichnis des Mandanten liegen und bestimmt die HTML Struktur wie die geladenen Elemente angezeigt werden sollen. |
container | String | Nein |
Der Parameter container kann mitübergeben werden um zu definieren was für Elemente um die HTML Struktur des Templates definiert werden sollen. z.B.: <div><ul><%></ul></div> -> in <%> werden Ergebnisse eingepflegt. |
button_next | String | Ja |
Damit kann man als Parameter jeden x-beliebigen Selektor übergeben, welcher für das Anzeigen der nächsten Ergebnisse benötigt wird (wenn lazyloading false ist). Sofern lazyloading true ist, kann man zum scrollen einen button_next Button definieren. z.B.: button_next=".nextScroll" |
button_prev | String | Ja |
Damit kann man als Parameter jeden x-beliebigen Selektor übergeben, welcher für das Anzeigen der vorherigen Ergebnisse benötigt wird (wenn lazyloading false ist). button_prev wird nicht verwendet, sofern lazyloading true ist. z.B.: button_prev=".prevScroll |
Beispiele:
// Scroll2 mit Lazyloading:
{scroll2
container="<ul class='parent'><%></ul>"
template="scroll.tpl" // Die Datei liegt als Beispiel in skin/Mandant
lazyloading=true
query.descendant=$mainPage
query.limit=10
}
// Scroll2 mit Lazyloading + Button_next
{scroll2
container="<ul class='parent'><%></ul>"
template="scroll.tpl" // Die Datei liegt als Beispiel in skin/Mandant
lazyloading=true
button_next=".nextScroll"
query.descendant=$mainPage
query.limit=10
}
// Scroll2 ohne Lazyloading mit vor und Zurück Buttons
{scroll2
container="<ul class='parent'><%></ul>"
template="scroll.tpl" // Die Datei liegt als Beispiel in skin/Mandant
button_next=".nextScroll"
button_prev=".prevScroll"
query.descendant=$mainPage
query.limit=10
}
// Scroll2 mit fulltext Suche
{scroll2
container="<ul class='parent'><%></ul>"
template="scroll.tpl" // Die Datei liegt als Beispiel in skin/Mandant
lazyloading=true
query.descendant=$mainPage
query.limit=10
param.fulltext="Test" // Alternativ kann man auch $smarty.request.search_string nehmen um eine Suche zu bauen
}
// Scroll2 mit Suche nach Extra Feldern
{scroll2
container="<ul class='parent'><%></ul>"
template="scroll.tpl" // Die Datei liegt als Beispiel in skin/Mandant
lazyloading=true
query.descendant=$mainPage
query.limit=10
param.extra="extra.lang = de"
}