Hallo zusammen!
Ich betreue eine Contao Installation die in einem Hauruck Verfahren von der Version 4.1.10 auf die Version 4.13.* geupdatet wurde. Ich vermute dabei sind einige Einstellungen, die nötig sind um Autowiring zu aktivieren, noch nicht vorgenommen worden.
Meine /config/services.yaml sieht so aus:
Code:
services:
_defaults:
autowire: true
autoconfigure: true
public: false
App\:
resource: ../src
exclude: ../src/{Entity,Migrations,Model,Resources,Tests,Widget}
App\Controller\:
resource: ../src/Controller
public: true
Ich habe 3 Controller unter /src/Controller/ liegen:
PillarElementController.php
PillarStartController.php
PillarStopController.php
Alle sind noch recht leer und haben folgenden Aufbau (Nur der class name unterscheidet sich):
PHP-Code:
<?php
namespace App\Controller;
use Contao\ContentModel;
use Contao\CoreBundle\Controller\ContentElement\AbstractContentElementController;
use Contao\Template;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
class PillarElementController extends AbstractContentElementController
{
protected function getResponse(Template $template, ContentModel $model, Request $request): ?Response
{
$template->model = $model;
return $template->getResponse();
}
}
entsprechende Paletten sind in /contao/dca/tl_content.php definiert ($GLOBALS['TL_DCA']['tl_content']['palettes']['pillar_element'] = ...), Templates wurden unterhalb von /templates/ angelegt (ce_pillar_element.php, ce_pillar_start.php, ce_pillar_stop.php), language Variablen sind gesetzt in /contao/languages/en/default.php (und /de/) und in der Datei /contao/config/config.php wurden die templates als wrapper markiert:
PHP-Code:
<?php
$GLOBALS['TL_WRAPPERS']['start'][] = 'ce_pillar_start';
$GLOBALS['TL_WRAPPERS']['stop'][] = 'ce_pillar_stop';
Leider werden die Controller aber gar nicht erkannt. Wenn ich die services.yaml um Einträge nach der Art
Code:
...
App\Controller\PillarElementController:
tags:
- name: contao.content_element
category: slider
template: ce_pillar_element
ergänze, werden die Content Elemente korrekt angezeigt (BE+FE). Aber das markieren als Wrapper klappt dennoch nicht.
Bei Lösung gerne auch die Stelle wo ich Informationen zum Thema hätte nachlesen können, denn meine Suche blieb erfolglos.
Besten Dank im Voraus und viele Grüße
Thomas
Lesezeichen