[Frage] Fluid-Templates aus eigener Extension werden in Provider-Extension nicht überschrieben? TYPO3-Version: 9.5.7

  • typonewbe typonewbe
    Sternenflotten-Admiral
    0 x
    188 Beiträge
    3 Hilfreiche Beiträge
    19. 06. 2019, 19:44

    Hallo liebe Community,

    folgende Situation es wurde mittels ExtensionBuilder eine Extension unter TYPO3 9.5.7 erstellt.

    Wie gewohnt werden dabei List-,Single-View angelegt.

    Nach installation und Konfiguration der Extension wurden im BE Datensätze erstellt welche im Frontend auch angezeigt werden. Soweit so gut.

    Anschließend habe ich aus der Extension die Fluid-Templates in die Provider-Extension kopiert.
    Der Pfad dazu lautet EXT:providerext/Resources/Private/Templates/MyExtension/ selbiges gilt für Layouts und Partials.

    Als nächstes habe ich das TypoScript in der Provider-Extension angepasst.

    [code]<INCLUDE_TYPOSCRIPT: source="FILE:EXT:my_extension/Configuration/TypoScript/setup.typoscript">
    plugin.tx_myextension_pi1.view.templateRootPaths.1 = EXT:providerext/Resources/Private/Templates/MyExtension/
    plugin.tx_myextension_pi1.view.partialRootPaths.1 = EXT:providerext/Resources/Private/Partials/MyExtension/
    plugin.tx_myextension_pi1.view.layoutRootPaths.1 = EXT:providerext/Resources/Private/Layouts/MyExtension/
    [/code]

    Im Backend wird im TypoScript-ObjectBrowser auch alles korrekt angezeigt erst kommt das original dann der zu überschreibende Pfad.
    [code]plugin.tx_myextension_pi1.view.templateRootPaths.0 = EXT:my_extension/Resources/Private/Templates/
    plugin.tx_myextension_pi1.view.templateRootPaths.1 = EXT:providerext/Resources/Private/Templates/MyExtension/
    [/code]

    Nach löschen alles Caches wird aber immer noch das Template der Extension gerendert nicht das der Provider-Extension.

    Interessant ist aber das er sich das Teils Teils holt habe in die Layouts und Templates Kommentare geschrieben und festgestellt, das er sich das Layout aus der Provider-Extension holt, aber warum auch immer dann in den Template-Pfad der Original Extension geht und dieses Template rendert.

    Hat sich in 9.5 was geändert? Schreibe nicht zum ersten mal Extensions und in 8.7 hat das noch funktioniert.

    Besten Dank schonmal im Voraus

  • Hilfreichster Beitrag

  • Teisinger Teisinger
    Jedi-Meister
    1 x
    331 Beiträge
    23 Hilfreiche Beiträge
    19. 06. 2019, 21:36 - Hilfreichster Beitrag

    Also a) du solltest wenn möglich in 10ner Schritten die Templates einbinden deine ProviderExt wäre dann mit 10 = pfad...

    Allein um es einfacher zu ermöglichen noch was dazwischen zu schalten wenn nötig... :)

    b) Die Templates werden für gewöhnlich nach Controller in Ordner sortiert.
    Gibt es z. B. einen NewsController liegen die dazugehörigen Templates meist in Resources/Private/Templates/News/MeinActionTemplate.html

    Dies müsstest du in deiner ProviderExt berücksichtigen, dort müssten die Templates dann auch in Templates/News/MeinOverrideActionTemplate.html sein. Oder das sollte auch gehen: Templates/MyExt/News/MeinOverrideActionTemplate.html

    Warum auch immer... anders funktioniert das bei mir auch nicht... ;)

    Also ControllerName als OrdnerName (ohne "Controller"). NewsController.php wird zu Templates/News/...

    https://github.com/groundstack-org


  • 1
  • Teisinger Teisinger
    Jedi-Meister
    1 x
    331 Beiträge
    23 Hilfreiche Beiträge
    19. 06. 2019, 21:36

    Also a) du solltest wenn möglich in 10ner Schritten die Templates einbinden deine ProviderExt wäre dann mit 10 = pfad...

    Allein um es einfacher zu ermöglichen noch was dazwischen zu schalten wenn nötig... :)

    b) Die Templates werden für gewöhnlich nach Controller in Ordner sortiert.
    Gibt es z. B. einen NewsController liegen die dazugehörigen Templates meist in Resources/Private/Templates/News/MeinActionTemplate.html

    Dies müsstest du in deiner ProviderExt berücksichtigen, dort müssten die Templates dann auch in Templates/News/MeinOverrideActionTemplate.html sein. Oder das sollte auch gehen: Templates/MyExt/News/MeinOverrideActionTemplate.html

    Warum auch immer... anders funktioniert das bei mir auch nicht... ;)

    Also ControllerName als OrdnerName (ohne "Controller"). NewsController.php wird zu Templates/News/...

    https://github.com/groundstack-org

  • typonewbe typonewbe
    Sternenflotten-Admiral
    0 x
    188 Beiträge
    3 Hilfreiche Beiträge
    20. 06. 2019, 12:00

    Hallo Teisinger,

    vielen Dank, genau das war es. Der Ordner für den Controller hat gefehlt.

    Zu blöd wäre schön wenn man sowas mal aus den Fehlermeldungen lesen würde, ausser das er das Template nicht finden kann bzw. er einfach was anderes Rendert.

    Danke noch mal

    Gruß Michael

  • 1