Ergebnis 1 bis 4 von 4

Thema: Wie definiere ich die Ausgabe von eigenen Feldern (z. B. Mitgliederfelder)

  1. #1
    Contao-Fan Avatar von rezico
    Registriert seit
    04.01.2011.
    Ort
    Nürnberg
    Beiträge
    451

    Standard Wie definiere ich die Ausgabe von eigenen Feldern (z. B. Mitgliederfelder)

    Hiho,
    ich "crossposte" in der Regel ungern, aber ich glaube das es sich hierbei weniger um ein XT-Memberproblem bzw. Frage handelt.

    Es geht konkret darum:
    https://community.contao.org/de/show...r-ein-Formular

    Ich hab über XT-Member eben einige Felder angelegt und diese dann als Erweiterung exportiert. D. h. ich habe in meinem Modulesordner nun meine Erweiterung mit den Feldern, also DCA, SQL, Sprachfiles usw.

    Im Grunde hätte ich das ja auch selbst schreiben können, weshalb die Verbindung mit XT-Members nur in diesem Zusammenhang besteht.

    Jetzt habe ich aber das Problem, das die Values meiner Felder nicht gleich die Values sind, die ich in der Erstellung des Feldes angegeben habe, sondern die Beschreibungen.

    Also habe ich als Value gleichzeitig die Bezeichnung, und das möchte ich auf keinen Fall. Gewollt sind natürlich die Werte die ich dafür angegeben habe.

    Ich hab mich jetzt schon grün und blau gesucht und ich weiß ja, dass es bei anderen Feldern auch genau so funktioniert. Z. B. bei den Mitgliedergruppen - Value ist 0, Bezeichnung ist dementsprechend meine erste Mitgliedergruppe.

    Ich gehe also davon aus, dass im DCA irgendwas falsch ist (???) Aber was, wo muss ich was ergänzen?

    Ein generiertes Feld wäre z. B.

    PHP-Code:
    $GLOBALS['TL_DCA']['tl_member']['fields']['xt_big_compa'] = array
    (
        
    'label'                   => &$GLOBALS['TL_LANG']['tl_member']['xt_big_compa'],
        
        
    'exclude'                 => true,
        
    'search'                  => true,
        
    'inputType'               => 'select',
        
        
    'options'                 => array('0' => &$GLOBALS['TL_LANG']['tl_member']['xt_big_compa_select']['0'],'1' => &$GLOBALS['TL_LANG']['tl_member']['xt_big_compa_select']['1'],'2' => &$GLOBALS['TL_LANG']['tl_member']['xt_big_compa_select']['2'],'3' => &$GLOBALS['TL_LANG']['tl_member']['xt_big_compa_select']['3'],'4' => &$GLOBALS['TL_LANG']['tl_member']['xt_big_compa_select']['4']),    
        
    'eval'                    => array('feEditable' => true,'feViewable' => true,'feGroup' => 'personal','tl_class' => 'w50')
    ); 

    Hat irgendjemand eine Idee?
    VIelen Dank!!!
    Contao ist schon was Feines...

  2. #2
    Contao-Fan Avatar von eS_IT
    Registriert seit
    21.07.2010.
    Ort
    Werne a. d. Lippe
    Beiträge
    585
    Partner-ID
    6161
    User beschenken
    Wunschliste

    Standard AW: Wie definiere ich die Ausgabe von eigenen Feldern (z. B. Mitgliederfelder)

    Hallo rezico,
    meiner Meinung nach, muss das Option-Array wie folgt aussehen:
    'options' = array(
    array(
    'value' => 1,
    'label' => 'WertausDeinemSpracharray'
    ),
    ...
    );

    Ist aber jetzt rein aus dem Kopf notiert und ich lasse mich gerne Verbessern.

    Viele Grüße,
    eS_IT


    Gesendet mit Tapatalk 2.
    Viele Grüße,
    eS_IT
    --
    e@sy Solutions IT - Ihr Partner für professionelle Softwareentwicklung
    Website - Contao Codebook - Partnerprofil - GitHub

  3. #3
    Contao-Fan Avatar von rezico
    Registriert seit
    04.01.2011.
    Ort
    Nürnberg
    Beiträge
    451

    Standard

    Hey!
    Erstmal danke
    Gestern Abend habe ich aber noch die Lösung gefunden.

    Bei mir funktioniert es wenn ich die Einträge im DCA folgendermaßen ändere:

    'options' => array(0, 1, 2, 3, 4, 5, 6),
    'reference' => &$GLOBALS['TL_LANG']['tl_member']['xt_dekade_select'],

    Ich ändere noch gerade das Template, welches sich um die Ausgabe kümmert, so dass man die Dateien nachträglich nicht mehr ändern muss. Das werde ich hier dann auch noch posten.

    MfG Christian.
    Geändert von rezico (10.01.2013 um 09:07 Uhr)
    Contao ist schon was Feines...

  4. #4
    Contao-Fan Avatar von rezico
    Registriert seit
    04.01.2011.
    Ort
    Nürnberg
    Beiträge
    451

    Standard

    So, und hier noch die Templateänderung, vorzunehmen im Template: extension_creator_dca_member.html5 Zeile 23 müsste es sein.

    PHP-Code:
    <?php if ($field->hasOptions): ?>
        'options'                 => array(
        <?php 
        $str 
    str_replace(","""$field->options$count); 
        
    $string ""
        for(
    $x 0$x <= $count$x++)
        {
    $string $string $x ", ";}
        
    $neu=substr($string0, -1); 
        echo 
    $neu;
        
    ?>),
        'reference'                  => &$GLOBALS['TL_LANG']['tl_member']['<?php echo $field->dbFieldName;?>_select'],    
    <?php endif; ?>
    Contao ist schon was Feines...

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
  •