Eigenes Modul nach umstellung auf Contao 5 wird im Artikel nicht dargestellt
Hallo, ich habe vor Jahren ein Minimodul mit einer Frontend-Ausgabe erstellt. Jetzt hab ich es auf Contao 5.x umgestellt. Soweit funktioniert das Modul im Backend.
Was aber nicht funktioniert ist, wenn ich das Modul in einem Artikel einfüge. Ich kann es einfügen, aber es wird mir nicht angezeigt. Es steht im Backend nur Modul. Wenn ich aber auf Bearbeiten gehe, kommte ich zum Element Modul und da ist es auch ausgewählt.
Im Frontend wird es mir nicht in den Quellcode eingebunden. Unter Contao 4.13 funktioniert es tatellos.
Was hab ich übersehen?
Liste der Anhänge anzeigen (Anzahl: 1)
So sieht der Pfad aus. Ich verwende Contao 5.3 und da hat das Creator-Modul mir das so angelegt. Den Ordner "classes" hab ich selbst angelegt und darin die DcaWebmail.php abgelegt. In dieser befindet sich nur der Code für das togglerIcon und togglerVisibility. In meiner alten installation hatte ich diesen Code direkt im dca.
Anhang 27129
Nachtrag:
Ich hab jetzt in der Datei "vendor/composer/autoload_classmap.php" folgendes eingefügt.
PHP-Code:
'Webmail\\ContaoWebmail\\classes\\DcaWebmail' => $vendorDir . '/webmail/contao-webmail/contao/classes/DcaWebmail.php',
Weiters hab ich in der Datei "vendor/composer/autoload_static.php" folgendes eingefügt:
PHP-Code:
'Webmail\\ContaoWebmail\\classes\\DcaWebmail' => __DIR__ . '/..' . '/webmail/contao-webmail/contao/classes/DcaWebmail.php',
Das funktioniert jetzt, aber warum schaft es mein Modul nicht, dies automatisch einzufügen? Was mach ich hier falsch?
Nachtrag 2:
Wenn ich ein Contao-Update mache, ist alles wieder wie beim alten.
Jetzt hab ich was ganz anderes gemacht. Ich habe unter "src/" einen Ordner mit "Classes" erstellt und darin hab ich dann die Datein "DcaWebmail.php" geschoben. Hab nur noch den Namespace von classes auf Classes angepasst und jetzt funktoniert es. Das war mir auch klar.
Aber warum funktioniert es unter /contao/classes/ nicht? Ich hatte auch die composer.json angepasst auf:
Code:
"autoload": {
"psr-4": {
"Webmail\\ContaoWebmail\\": ["src/", "contao/"]
}
},
Nicht einmal das halt geholfen und in der services.yaml wusste ich nicht, wie ich den Ordner ../contao/ hinzufügen könnte mit dem Namespace, welcher dort schon steht (siehe weiter oben)