Verwendung: ALLE Custom Elements um weitere Felder ergänzen

Gerd's Avatar

Gerd

15 Nov, 2019 03:07 PM

Produkt: Custom Elements Contao
Contao-Version: 4.4

Hallo Team,
bin gerade dabei, eine Erweiterung zu schreiben die allen Inhaltselementen weitere Felder hinzufügt, mit dem Zweck, deren Anzeige an gewisse Bedingungen zu binden.
Daher die Frage: Kann man generell über das dca auch den Custom Elements diese Felder hinzufügen, ohne jedes einzelne anpassen zu müssen, und die dann auch für alle weiteren Felder (die erstellt würden) gilt?
Bei den Frontend-Elementen habe ich das so gelöst:

foreach ($GLOBALS['TL_DCA'][$strName]['palettes'] as $palette => $val) {
    if ($palette !== '__selector__') {
        // Modify the palette
        $GLOBALS['TL_DCA'][$strName]['palettes'][$palette] = str_replace
        (
            'stop',
            'stop,visibility_conditions',
            $GLOBALS['TL_DCA'][$strName]['palettes'][$palette]
        );
    }
}

Freue mich auf eine Antwort!
Gruß,
Gerd

  1. Support Staff 1 Posted by RockSolid Theme... on 18 Nov, 2019 02:54 PM

    RockSolid Themes's Avatar

    Vielen Dank für Ihre Frage.

    Die Palette der Custom Elements kann über $GLOBALS['TL_DCA'][$dc->table]['palettes']['rsce_ELEMENTNAME'] angepasst werden. Da die Elemente jedoch zur Laufzeit generiert werden muss Ihr Anpassung-Code in einem onload_callback nach der Custom Elements Erweiterung ausgeführt werden.

  2. 2 Posted by Gerd on 25 Nov, 2019 11:05 AM

    Gerd's Avatar

    Hallo, und vielen Dank für die Antwort!

    Das hat funktioniert, indem ich die Klasse CustomElements um eine neue Methode erweitert habe, die bei onload_callback gerufen wird, dann die CustomElements onloadCallback aufruft und hinterher die Palette erweitert.

    Jetzt habe ich nur ein einziges Problem:
    Wie gehe ich damit um, wenn die Erweiterung CustomElements NICHT installiert ist?

    Vielen Dank,
    Gerd

  3. 3 Posted by Gerd on 25 Nov, 2019 12:03 PM

    Gerd's Avatar

    OK, hab's jetzt in ein if(class_exists('\MadeYourDay\RockSolidCustomElements\CustomElements')) gekapselt

Reply to this discussion

Internal reply

Formatting help / Preview (switch to plain text) No formatting (switch to Markdown)

Attaching KB article:

»

Attached Files

You can attach files up to 10MB

If you don't have an account yet, we need to confirm you're human and not a machine trying to post spam.

Keyboard shortcuts

Generic

? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac