Es handelt sich bei dieser Erweiterung für das Open Source CMS Contao um ein Backend Widget, das dem listWizard sehr ähnlich ist. Manchmal benötigt man eine Möglichkeit, den Nutzer aus einer bestimmten Anzahl von Optionen beliebig viele auswählen zu lassen. Diese Erweiterung stellt zu diesem Zweck das Widget selectmenuWizard zur Verfügung. Es handlet sich hierbei um eine variable Liste an Auswahlfeldern.
Die Erweiterung richtet sich an Entwickler, da die Felder im DCA definiert werden müssen. Es können die gängigen Einstellungen vorgenommen werden, die Contao für das DCA vorsieht.
Patrick Froch hallo@patrick-froch.de
Die Software wird unter LGPL-v3 veröffentlicht. Details sind in der Datei LICENSE zu finden.
- php: ~8.1
- contao/core-bundle: ~4.13|^5.0
Die Installation geschieht über den ContaoManager. Einfach nach esit/selectwizard suchen und installieren.
Aleternativ kann die Erweiterung mit folgendem Befehl über Composer installiert werden:
composer require esit/selectwizardDie Erweiterung wurde erfolgreich mit folgenden Kombinationen aus PHP und Contao getestet:
| Contao | ||||
|---|---|---|---|---|
| ✓ | ✓ | ✓ | ✓ | |
| ✓ | ✓ | ✓ | ✓ | |
| ✓ | ✓ | ✓ | ✓ | |
| ✓ | ✓ | ✓ | ✓ | |
| ✓ | ✓ | ✓ | ✓ | |
| ✓ | ✓ | ✓ | ✓ | |
| ✓ | ✓ | ✓ | ✓ |
<?php
// YOUR_EXTENSION/Resources/contao/dca/tl_demotable.php
/* set table name */
$table = 'tl_demotable';
/* palettes */
$GLOBALS['TL_DCA'][$table]['palettes']['default'] = '{testfield_legend},testfield;';
/* field */
$GLOBALS['TL_DCA'][$table]['fields']['testfield'] = [
'label' => &$GLOBALS['TL_LANG'][$table]['testfield'],
'inputType' => 'selectmenuWizard',
'options' => [1 => 'Test 001', 2 => 'Test 002'],
'eval' => ['tl_class'=>'w50', 'includeBlankOption'=>true],
'sql' => 'text NOT NULL'
];Einschränkungen:
submitOnChangefunktioniert nicht, macht aber auch wenig Sinn, da dies hauptsächliche für Subpaletten o.ä. wichtig ist. Diese können hier aber nicht verwendet werden, da es nicht nur einen Wert gibt.
Im Verzeichnis der Erweiterung folgendes aufrufen:
$> build/runtest.sh