Contao-Camp 2024
Ergebnis 1 bis 2 von 2

Thema: Mitglieder - tl_member: Nach dem hinzufügen neuer Felder neue Gruppierungen erstellen

  1. #1
    Contao-Nutzer Avatar von merlincom
    Registriert seit
    06.07.2015.
    Ort
    Basel (CH)
    Beiträge
    243

    Frage Mitglieder - tl_member: Nach dem hinzufügen neuer Felder neue Gruppierungen erstellen

    Hallo
    Im Tread https://community.contao.org/de/show...ei-Darstellung hat mich Spooky unterstützt bei der Erstellung neuer Felder - vielen Dank nochmals! Nachdem nun alles funktioniert und ich die Felder im Backend in der neuen Reihenfolge ausgeben kann, möchte ich die Gruppierungen neu gestalten. Am Beispiel möchte ich die Rubrik 'Adressdaten', die mit Company (Firma) startet und nun zusätzliche Felder für die Firmendresse erhält wie company_subname_my etc., in einen Unterbreich Adressdaten > Firmenadresse zusammenfassen. Wenn das klappt, möchte ich danach die bereits bestehenden Felder Straße, Postleitzahl etc. im Unterbereich Adressdaten > Privatdresse gruppieren.

    Meine Fragen?
    [1] Ist es mit (einfachen) Einträgen in der tl_member.php überhaupt möchlich, solche Untergruppierungen wie Adressaten > Geschäftsadresse zu erstellen?
    [2] Wenn Unterkategorien nicht möglich sind, dann zumindest anstelle der Kategorie Adressdaten neu die Kategorien Geschäftsadresse und Privatadresse.
    [3] Wie kann ich eine Gruppierung erreichen? Ich habe z.B. beim Feld company_subname_my die 'feGroup'=>'companyadress_my' mitgegeben.
    [4] Ist der Lösungsansatz über Subpaletten zu suchen und zum Stichwort Subpaletten hier zu finden: https://docs.contao.org/dev/framewor...th-subpalettes ?

    Gruss von Marcel

  2. #2
    Contao-Nutzer Avatar von merlincom
    Registriert seit
    06.07.2015.
    Ort
    Basel (CH)
    Beiträge
    243

    Information

    So hab ich mal die Felder umsortiert (Screenshot: Screenshot_2020-04-28-13-00 Mitglieder › Mitglied ID 1 bearbeiten.png)
    PHP-Code:
    /*********************************************************************************************
    // contao/dca/tl_member.php
    // Referenz: https://docs.contao.org/dev/framework/dca/palettemanipulator/
    // use Contao\CoreBundle\DataContainer\PaletteManipulator; // Immer an Anfang stellen
    // Referenz: https://github.com/contao/contao/blob/c9e195891d08bdb26504c394775cf956f23bf719/core-bundle/src/Resources/contao/dca/tl_member.php#L99
    *********************************************************************************************/

    PaletteManipulator::create()  // In der Grundinstallation bestehende Felder zum späteren Neusortieren in einem ersten Schritt entfernen  
        
    ->removeField('phone''contact_legend')
        ->
    removeField('mobile''contact_legend')
        ->
    removeField('fax''contact_legend')
        ->
    removeField('email''contact_legend')
        ->
    removeField('website''contact_legend')
        ->
    removeField('language''contact_legend')

        ->
    removeField('street''address_legend')
        ->
    removeField('postal''address_legend')
        ->
    removeField('city''address_legend')
        ->
    removeField('state''address_legend')
        ->
    removeField('country''address_legend')

        ->
    applyToPalette('default''tl_member')
    ;

    PaletteManipulator::create() // Die neuen Felder wie  "mitglied_number_my" etc. after the field "gender" etc. hinzufügen
        
        //->addField('privat_email_my', 'fax')

        
    ->addField('mitglied_memo_my''gender')
        ->
    addField('mitglied_stop_my''gender')
        ->
    addField('mitglied_start_my''gender')
        ->
    addField('mitglied_number_my''gender')

        ->
    addField('company_adress_prefered_my''company')
        
        ->
    addField('company_webseite_my''company')
        ->
    addField('company_email_my''company')
        ->
    addField('company_phone_direct_my''company')
        ->
    addField('company_phone_my''company')
        ->
    addField('company_country_my''company')
        ->
    addField('company_state_my''company')
        ->
    addField('company_city_my''company')
        ->
    addField('company_postoffice_my''company')
        ->
    addField('company_street_my''company')
        ->
    addField('company_subname_my''company')

        
        
    // now the field is registered in the PaletteManipulator
        // but it still has to be registered in the globals array:
        // https://github.com/contao/contao/blob/c9e195891d08bdb26504c394775cf956f23bf719/core-bundle/src/Resources/contao/dca/tl_member.php#L99
        
    ->applyToPalette('default''tl_member'
    ;


    /*********************************************************************************************
    Positionen in der Grundistallation zuvor gelöschter Felder an neuer Position wieder hinzufügen 
    *********************************************************************************************/
    PaletteManipulator::create()

        ->
    addField('language''gender')
        
        ->
    addField('email''gender'//E-Mail für Mailinglist

        
    ->addField('country''mitglied_memo_my')
        ->
    addField('state''mitglied_memo_my')
        ->
    addField('city''mitglied_memo_my')
        ->
    addField('postal''mitglied_memo_my')
        ->
    addField('street''mitglied_memo_my')
        
        
    //->addField('fax', 'mitglied_stop_my') //Faxnummer soll nicht angezeigt werden
        
    ->addField('mobile''mitglied_memo_my')
        ->
    addField('phone''mitglied_memo_my')
        
        ->
    addField('privat_email_my''mobile')
        ->
    addField('website''mobile')
        
        ->
    applyToPalette('default''tl_member'


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
  •