Hallo liebes Shopware-Forum,
ich nutze die Shopware Version 6.1.3 und hatte schon des Öfteren das Problem, dass die Blöcke, die ich im Theme (oder in einem anderen Plugin) überschreibe bei der Vererbung nicht beachtet werden, wenn ich die selbe Datei schon in einem anderen Plugin extendet habe. Auch wenn es sich um komplett verschiedene Blöcke innerhalb der Dateien handelt.
Das Problem scheint auch nicht immer aufzutreten.
Aktuell hab ich z.B. das Problem, dass lokal das meiste richtig geladen wird, auf dem Abnahmeserver mit der selben Shopware-Version allerdings das Verhalten bzgl. der Vererbung wieder ein anderes zu sein scheint.
Beispiel:
In einem Plugin überschreibe ich die tabs.html.twig
{% sw_extends '@Parent/storefront/page/product-detail/tabs.html.twig' %}
{% block page_product_detail_tabs_navigation_review %}
{% set preview = page.product.translated.customFields.agenturxy_kunde_products_preview %}
{% set blurb = page.product.translated.customFields.agenturxy_kunde_products_blurb %}
{% if preview %}
{{ 'agenturxy_kunde_products.preview'|trans|sw_sanitize }}
{% sw_icon 'arrow-medium-right' style {'pack':'solid'} %}
{{ preview|raw|sw_sanitize|striptags|u.truncate(125) }}
{% if preview|length >= 126 %}
… {{ "detail.tabsPreviewMore"|trans|sw_sanitize }}
{% endif %}
{% endif %}
{% if blurb %}
{{ 'agenturxy_kunde_products.blurb'|trans|sw_sanitize }}
{% sw_icon 'arrow-medium-right' style {'pack':'solid'} %}
{{ blurb|raw|striptags|u.truncate(125) }}
{% if blurb|length >= 126 %}
… {{ "detail.tabsPreviewMore"|trans|sw_sanitize }}
{% endif %}
{% endif %}
{% if page.extensions.agenturxy_kunde_product_single_issues %}
{{ 'agenturxy_kunde_products.singleIssues'|trans|sw_sanitize }}
{% sw_icon 'arrow-medium-right' style {'pack':'solid'} %}
{{ 'agenturxy_kunde_products.singleIssuesDesc'|trans|sw_sanitize }}
{% endif %}
{{ parent() }}
{% endblock %}
{% block page_product_detail_tabs_content_review %}
{{ parent() }}
{% sw_include '@Storefront/storefront/page/product-detail/agenturxy-kunde-products-add-fields.html.twig' %}
{% if page.extensions.agenturxy_kunde_product_single_issues %}
{% sw_include '@Storefront/storefront/page/product-detail/agenturxy-kunde-products-single-issues.html.twig' with {
'singleIssues': page.extensions.agenturxy_kunde_product_single_issues
} %}
{% endif %}
{% endblock %}
In meinem Theme überschreibe ich diese ebenfalls (diese wird aktuell in der anderen Umgebung ignoriert):
{% sw_extends '@Parent/storefront/page/product-detail/tabs.html.twig' %}
{% block page_product_detail_tabs_navigation %}
{% block page_product_detail_tabs_navigation_container %}
{{ parent() }}
{% endblock %}
{% endblock %}
In der Theme.json habe ich die Vererbungsreihenfolge definiert:
{
"views": [
"@Storefront",
"@Plugins",
"@AgenturxyKundeTheme"
],
...
Das gleiche Problem hatte ich in der Vergangenheit ebenfalls schonmal bei Änderungen an der base.html.twig, die über ein Plugin und über mein Theme geändert wurde. Gefühlt wird halt immer nur die Datei, die zufällig am höchsten gewichtet, geladen und dann die anderen Dateien, die die selbe Core-Datei aber nicht mal den selben Block extenden, ignoriert.
Hat hier wer eine Idee, woran das liegen könnte?
Liebe Grüße