FYI: Ich konnte dieses Thema nun klären.
Verantwortlich für die type
Abhängige Ausführung von Befehlen ist die Datei vendor/typo3/cms-backend/Classes/Form/FormDataProvider/PageTsConfigMerged.php
. Darin wird deutlich, dass es keinerlei Unterscheidung gibt zwischen Inhalten (tt_content
) und Seiten (pages
).
Ich habe meinen Test also noch ein weiteres mal ausgeführt und habe die Zeile
TCEFORM.pages.backend_layout.types.4.disabled = 1
in der Datei Configuration/page.tsconfig
meines Sitepackages angelegt. Dies hat nun funktioniert! Keine Ahnung warum es beim letzten mal nicht geklappt hatte, vermutlich war da etwas durcheinander geraten mit der Reihenfolge der TSconfig-Einbindungen..
Als nächstes habe ich nochmal EXT:popup_power
installiert und eine neue "Popup Power Content [200]" angelegt und folgende TSconfig-Zeile ergänzt:
TCEFORM.pages.backend_layout.types.200.disabled = 1
Das hat erneut nicht funktioniert. Das Problem musste also in der Extension selbst liegen.
Als nächstes habe ich die konfigurierten Types im TCA Array überprüft...
... habe festgestellt, dass der neue page type 200 dort fehlt!
Um das zu lösen habe ich also folgenden Eintrag in der Datei Configuration/TCA/Overrides/pages.php
meines Sitepackages ergänzt:
$GLOBALS['TCA']['pages']['types']['200'] = $GLOBALS['TCA']['pages']['types']['1'];
Da sowieso für die Backend-Ausgabe der Standard-Type 1
für nicht konfigurierte Types verwendet wird, erschien es mir legitim, die Konfiguration aus 1
nach 200
zu übernehmen.
Nach dieser Ergänzung funktionieren auch TSconfig-Angaben unter TCEFORM.pages.backend_layout.types.200
wieder 💪.
Ob die $GLOBALS['TCA']['pages']['types']['200']
-Konfiguration nun etwas ist, das über meinen Use-Case hinaus in der Extension EXT:popup_power
ergänzt werden sollte weiß ich nicht genau. Ich werde den Maintainer Kevin Chileong Lee hierzu mal kontaktieren und ihn auf diesen Thread hinweisen.