ich versuche mein Problem kurz zu schildern.
Habe ein Modul erstellt mit dem ich dem Benutzer ein neuen Tab hinzufüge.
Für den Tab sorgt eine menu.xml:
SUBMENU id=“mxusers” cl=“admin_user” list=“user_list”
TAB id=“myUserRights” cl=“myuser_main”
SUBMENU
Das Template von user_extend hab ich kopiert und das wichtigste in meiner myUser_main.tpl behalten.
Eine neue Klasse “myuser_main.php” erstellt:
class myuser_main extends \OxidEsales\Eshop\Application\Controller\Admin\AdminDetailsController {
public function render() {
return “myUser_main.tpl”;
}
Die Klasse in der metadata.php unter files verknüpft (unter controller ebenfalls getestet). Bei files mit php Endung und bei controller ohne php Endung.
Egal was ich probiere, ich bekomme ständig die Fehlermeldung das meine Klasse nicht gefunden wird. tmp auch jedes mal geändert. Ich weiß einfach nicht weiter.
danke für deine Antwort, aber auch unter controllers hab ich die Klasse schon getestet.
Ich bekomme folgenden Fehler, vielleicht sagt dass ja irgend jemand was:
also in der composer.json (hatte auch schon mehrere Varianten getestet, z.B. statt myUserAccess mit my_useraccess etc.)… aktuell auf jeden Fall so:
…
“psr-4”: {
“my\myUserAccess\”: “…/…/…/source/modules/my/my_useraccess”
}
…
OK das ist die composer.json des Moduls. Der Namespace muss aber von der composer.json des Shops geladen werden. Damit composer den Namespace mitbekommt, gibt es verschiedene Möglichkeiten:
Modul über composer im Shop installieren (z.B. aus Git Repo, Zip Repo oder Packagist)