Ich versuche, die $menu_icon
Variable in CMSPageController
zu ändern, ohne Kerndateien zu bearbeiten (IE: das Symbol neben dem Menüpunkt "Seiten" im CMS). Ich ging auf ein Glied, und versucht, die folgenden:
1: Definieren einer Erweiterung CMSPageController
in _config.yml
CMSPageController:
extensions:
- ChangeMenuIcon
2: Definieren Klasse und erstrecken sich von CMSPageControllerExtension
in mysite
class ChangeMenuIcon extends CMSPageControllerExtension {
private static $menu_icon = 'framework/admin/images/menu-icons/16x16/information.png';
}
Dies führt zu einem Fehler von 500. Ist das tatsächlich die richtige Methode zum Überschreiben einer vorhandenen (Kern-) Klasseneigenschaft?
Nur zur Info: Sie haben einen Fehler 500, weil es keine 'CMSPageControllerExtension' Klasse gibt. Ihre Erweiterung sollte eine Unterklasse von 'LeftAndMainExtension' oder einfach nur' Extension' sein. Das Konfigurations-System zu benutzen, wie in der Antwort erklärt, ist sowieso besser, also bleiben Sie dabei. – bummzack
Oh ich dachte, indem ich dieses Zeug in die .yml-Datei legte ich gerade diese 'CMSPageControllerExtension'-Klasse. Falsche Annahme, denke ich! – Faloude
Basierend auf der Konfiguration werden keine Klassen generiert. Bei Erweiterungen schreiben Sie die Klassen und verwenden das Config-System, um sie anzuwenden. – bummzack