Einstellungen vornehmen

Wenn Sie in der conf.json Datei controls definieren, können Sie als type auch conf verwenden, um Einstellungen für diesen Block vorzunehmen.

Hierbei können Sie, wie für Seitentypen auch, über tpl_name und script_name ein eigenes Template und PHP Skript einbinden (die Pfade sind relativ zum site Verzeichnis und greifen automatisch auf site/_global/ zurück, wenn es sonst nichts passendes gibt. Ihre Templates können auch auf .tpl enden, z.B. news/entry/admin/conf.tpl).

{
    "blocks": {
        "custom": {
            "title": "Individuell einstellbar",
            "controls": [{
                "title": "Einstellungen",
                "type": "conf",
                "tpl_name": "admin/custom.tpl"
            }]
        }
    }
}
wb_incandescent
Verwenden Sie die Eigenschaften width und height, um die Dimensionen des Dialogs zu bestimmen.
wb_incandescent
Verwenden Sie die Eigenschaft auto, um den Dialog automatisch nach dem Einfügen und Duplizieren des Blocks zu öffnen.

Das Beispiel Template admin/custom.tpl könnte so aussehen:

{input type="text" name="title" title="Titel"}

Und das zugehörige Template für den Block custom:

<h2>{$extra.title}</h2>

In Ihrem Template für den Einstellungsdialog müssen Sie kein umfassendes HTML Gerüst definieren, wie es bei Seitentypen der Fall ist. Sie können direkt Input Plugins setzen oder Ihr eigenes HTML verwenden.

wb_incandescent
Das Laden und Speichern der Input Plugins erfolgt automatisch. Über do_load und do_unload Javascript Funktionen können Sie optional eigene Logik einbringen. Wenn Sie in do_unload einen String zurückliefern, können Sie das Speichern abbrechen und ein Warnhinweis wird angezeigt. Wenn Sie stattdessen false zurückliefern, wird ein Standard Warnhinweis verwendet. Wenn Sie für do_unload keinen Rückgabewert angeben oder z.B. true zurückgeben, wird das Speichern fortgeführt.
wb_incandescent
Verwenden Sie die Javascript Variablen this_layout, this_block, this_orient und this_index um an die Informationen des aktuellen Blocks und dessen Position im Layout zu gelangen. Auch über die Smarty Variablen $_layout, $_block, $_orient und $_index gelangen Sie an diese Informationen. MIt $extra erhalten Sie Zugriff auf die aktuell gespeicherten Einstellungen für diesen Block..
wb_incandescent
Alle Werte der Input Plugins werden automatisch dem aktuellen Block zugewiesen. Dazu werden die Javascript Funktionen set_extra(key, value) und get_extra(key) verwendet (auch delete_extra(key) ist möglich). Verwenden Sie diese Funktionen in do_load, bzw. do_unload, wenn Sie eigene Werte laden und speichern wollen, die nicht über Standard Input Plugins bereitgestellt werden, bzw. über Input Plugins verwaltet werden, die den Parameter no_auto setzen.
warning
Um im Block Template auf die Werte zuzugreifen, die im Einstellungsdialog getroffen wurden, steht Ihnen die Smarty Variable $extra zur Verfügung.