Contao-Camp 2024
Ergebnis 1 bis 7 von 7

Thema: System::importStatic() failed because class "tl_content" is not a valid class name

  1. #1
    Contao-Nutzer
    Registriert seit
    18.03.2010.
    Beiträge
    63

    Standard System::importStatic() failed because class "tl_content" is not a valid class name

    Hallo zusammen,

    wenn wir eine Root-Seite in der Seitenstruktur bearbeiten möchten, kommt der Fehler

    "System::importStatic() failed because class "tl_content" is not a valid class name or does not exist."

    Wie kommen wir der Ursache auf die Spur, ist da in einer Paletten-Definition ggf. ein tl_content falsch gestetzt?

    VG
    Daniel

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.050
    Partner-ID
    10107

    Standard

    Welche Contao Version genau?

    Nutze den Debug-Modus und poste den Stack Trace.

  3. #3
    Contao-Nutzer
    Registriert seit
    18.03.2010.
    Beiträge
    63

    Standard

    Guter Tipp, danke.

    Das hier ist der problematische Code:

    PHP-Code:
    $GLOBALS['TL_DCA']['tl_page']['fields']['metabar_navi'] = array
    (
        
    'label' => &$GLOBALS['TL_LANG']['tl_page']['metabar_navi'],
        
    'exclude' => true,
        
    'inputType'               => 'select',
        
    'options_callback'        => array('tl_content''getModules'),
        
    'eval'                    => array('mandatory'=>true'chosen'=>true'submitOnChange'=>true'tl_class'=>'w50 wizard'),
        
    'wizard' => array
        (
            array(
    'tl_content''editModule')
        ),
        
    'sql' => "int(10) unsigned NOT NULL default '0'"
    ); 
    Wie lösen wir das?

  4. #4
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.050
    Partner-ID
    10107

    Standard

    Nachdem ihr in tl_page die Legacy Klasse tl_content referenziert, müsst ihr in eurem tl_page DCA am Anfang
    PHP-Code:
    \Contao\Controller::loadDataContainer('tl_content'); 
    aufrufen.

  5. #5
    Contao-Nutzer
    Registriert seit
    18.03.2010.
    Beiträge
    63

    Standard

    Klasse, das wars, vielen Dank.

  6. #6
    Contao-Nutzer
    Registriert seit
    18.03.2010.
    Beiträge
    63

    Standard

    Noch eine Anschluss-Frage - wie würden wir das ohne eine Legacy-Klasse lösen können?

  7. #7
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.050
    Partner-ID
    10107

    Standard

    Naja, ihr müsstest halt tl_module::getModules und tl_module::editModule in einem eigenen Event Listener selbst implementieren. Zahlt sich aber vermutlich nicht aus .

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
  •