Klassen in Contao überschreiben

Um Klassen in einem Contao Modul zu überschreiben, wird in der config/config.php die eigene Klasse registriert:

$GLOBALS['FE_MOD']['navigationMenu']['navigation'] = ModuleMeineUeberschriebeneNavigationKlasse

Wir wollen ja eine bestehende Klasse erweitern, deswegen muß sich der Eintrag mit einem bestehenden Modul decken. Am besten schaut man dazu in das entsprechende Modul. Anschließend definiert man die Klasse im eigenen Modul-Ordner. Bitte darauf achten, dass der Ordner im Alphabet nach dem zu überschreibenden Modul kommt, da Contao die Module in alphabetischer Reihenfolge einliest. Die Klasse selbst leitet dann von der bereits vorhandenen Klasse ab:

class ModuleMeineUeberschriebeneNavigationKlasse extends ModuleNavigation
{
  // Hier wird Funktionalität überschrieben / erweitert
}

4 Gedanken zu “Klassen in Contao überschreiben

  1. Hi, ich versuche das gerade, aber wenn ich meine neue Klasse registriere, dann sind alle anderen Funktionen der ursprünglichen Klasse nicht mehr aufrufbar.

    Gruß
    Michel

Kommentar verfassen