Ich muss eine neue Erweiterung schreiben und möchte das gleich in der richtigen Umgebung (Managed Edition) machen. Die Erweiterung wird nicht öffentlich werden, deshalb sollte ich das irgendwie in Contao 4.4 reinbringen. Bis jetzt habe ich das aber nicht geschafft.
Struktur ist:
Code:
vendor
- user
-- bundle
--- src
---- ContaoManager
------ Plugin.php
---- Resources
----- contao
------ config
------ dca
------ languages
------ xyz...
----- public
---- Bundle.php
--- composer.json
Composer.json:
Code:
{
"name": "user/bundle",
"type": "contao-bundle",
"description": "Contao Bundle....",
"license": "LGPL-3.0+",
"authors": [
{
"name": "Name",
"homepage": "https://www.domain.com"
}
],
"require": {
"php": ">=7.0",
"symfony/framework-bundle": "^3.3",
"contao/core-bundle": "^4.4"
},
"require-dev": {
"contao/manager-plugin": "^2.0"
},
"conflict": {
"contao/core": "*",
"contao/manager-plugin": "<2.0 || >=3.0"
},
"autoload": {
"psr-4": {
"User\\Bundle\\": "src/"
},
"classmap": [
"src/Resources/contao/",
],
"exclude-from-classmap": [
"src/Resources/contao/config/",
"src/Resources/contao/dca/",
"src/Resources/contao/languages/",
"src/Resources/contao/templates/"
]
},
"autoload-dev": {
"psr-4": {
"User\\Bundle\\Tests\\": "tests/"
}
},
"config": {
"preferred-install": "dist"
},
"extra": {
"contao-manager-plugin": "User\\Bundle\\ContaoManager\\Plugin"
}
}
Dann:
composer install --optimize-autoloader
Cache löschen
Installtool aufrufen
Erweiterung wir nicht geladen und Datenbank wird nicht aktualisiert.
Was habe ich vergessen oder ist das der falsche Weg? Müssen neue Erweiterungen Symfony Bundles sein ohne DCA usw.?
Lesezeichen