Ergebnis 1 bis 6 von 6

Thema: Dropdown Feld - DCA - select option / Sprache

  1. #1
    Contao-Nutzer
    Registriert seit
    05.11.2022.
    Ort
    Besigheim
    Beiträge
    4

    Standard Dropdown Feld - DCA - select option / Sprache

    Hallo in die Runde,
    ich komme aktuell bei einem Dropdown Feld, das ich mit DCA eingebunden habe nicht weiter.
    Konkret betrifft dies die Sprache. Damit DE und EN möglich wird habe ich bei der Auswahl "options" es so umgesetzt => 'options' => ['value1' => 'label1', 'value2' => 'label2',..
    In dem Dropdown Feld steht jetzt zur Auswahl = Label1, Label2 usw.
    Was muss ich in der tl_member.php unter languages/de oder languages/en eintragen, damit im Dropdown Feld die entsprechenden Einträge in der gewünschten Sprache erscheinen?

    <?php
    // contao/dca/tl_member.php
    use Contao\CoreBundle\DataContainer\PaletteManipulator ;

    $GLOBALS['TL_DCA']['tl_member']['fields']['status'] = [
    'label' => &$GLOBALS['TL_LANG']['tl_member']['lp_status'],
    'inputType' => 'select',
    'options' => ['value1' => 'label1', 'value2' => 'label2', 'value3' => 'label3', 'value4' => 'label4', 'value5' => 'label5', 'value6' => 'label6', 'value7' => 'label7'],
    'eval' => ['tl_class' => 'w50', 'feEditable'=>true, 'maxlength' => 255],
    'sql' => ['type' => 'string', 'length' => 255, 'default' => ''],
    ];


    Das ist mein bisheriger Ansatz, jedoch ohne Erfolg

    Sprache DE / Datei tl_member.php
    $GLOBALS['TL_LANG']['tl_member']['lp_status']['value1']['label1'] = 'grün';
    $GLOBALS['TL_LANG']['tl_member']['lp_status']['value2']['label2'] = 'gelb';
    $GLOBALS['TL_LANG']['tl_member']['lp_status']['value2']['label2'] = 'rot';
    usw.

    Ich stehe da momentan echt auf dem Schlauch. Danke für Tips und Hinweise.
    Viele Grüße Carsten

  2. #2
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.943

    Standard

    Die Sprache ist doch bereits ein Feld von tl_member. Wenn Du also „nur“ die verfügbare Auswahl ändern willst, würde ich das über den getLanguages Hook umsetzen https://docs.contao.org/dev/referenc.../getLanguages/ machen.
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

  3. #3
    Contao-Nutzer
    Registriert seit
    05.11.2022.
    Ort
    Besigheim
    Beiträge
    4

    Standard

    da muss ich passen, das verstehe ich jetzt nicht.
    Mit dem getLanguages Hook greife ich doch auf eine bereits existierende Sprache zurück, oder? In meinem Fall möchte ich für ein kplt. neues Dropdown Feld die jeweilige Label Bezeichnung in der Sprache DE und EN ausgeben

    'inputType' => 'select',
    'options' => ['value1' => 'label1', 'value2' => 'label2', 'value3' => 'label3'],

    über diese Variante ist die Mehrsprachigkeit ja nicht gegeben.
    'inputType' => 'select',
    'options' => ['grün', 'gelb', 'rot'],

  4. #4
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.451
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Schau mal hier: https://docs.contao.org/dev/referenc...lds/#reference

    Da gibt es ein Attribut "reference" ... dazu findest du im Code bestimmt auch Beispiele.

  5. #5
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.943

    Standard

    Zitat Zitat von semm Beitrag anzeigen
    da muss ich passen, das verstehe ich jetzt nicht.
    Sorry, dann hatte ich adenine Frage falsch verstanden und mein Hinweis ergibt keinen Sinn :-(
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

  6. #6
    Contao-Nutzer
    Registriert seit
    05.11.2022.
    Ort
    Besigheim
    Beiträge
    4

    Standard

    Super danke euch für die Anregungen.
    Manchmal bedarf es nur kleiner Gedankenstöße um die Denkblockade aufzulösen - Das Ziel ist so nah.
    Ich habe es jetzt so umgesetzt und es funktioniert.

    //contao/dca/tl_member.php

    <?php
    // contao/dca/tl_member.php
    use Contao\CoreBundle\DataContainer\PaletteManipulator ;
    $GLOBALS['TL_DCA']['tl_member']['fields']['status'] = [
    'label' => &$GLOBALS['TL_LANG']['tl_member']['lp_status'],
    'inputType' => 'select',
    'options' => array ('value1', 'value2', 'value3'),
    'reference' => &$GLOBALS['TL_LANG']['tl_member']['lp_status']['lp_status_options'],
    'eval' => ['tl_class' => 'w50', 'feEditable'=>true, 'maxlength' => 255],
    'sql' => ['type' => 'string', 'length' => 255, 'default' => ''],
    ];

    //contao/languages/de/tl_member.php
    <?php
    // contao/languages/de/tl_member.php
    $GLOBALS['TL_LANG']['tl_member']['lp_status']['lp_status_options']['value1'] = 'grün';
    $GLOBALS['TL_LANG']['tl_member']['lp_status']['lp_status_options']['value2'] = 'gelb';
    $GLOBALS['TL_LANG']['tl_member']['lp_status']['lp_status_options']['value3'] = 'rot';

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •