Shopware 6:使用 sw_include 时未加载 Twig 文件

Shopware 6: Twig files not loaded when using sw_include

目前我正在为 Shopwre 6 的主题苦苦挣扎。 在版本 6.2.2 中,我的主题中断并且不会加载任何包含的 twig 文件。

以下代码在我的 base.html.twig 主题文件中。

{% block base_header %}
    <header class="header-main">
        {% block base_header_inner %}
            <div class="container">
                {% sw_include '@Themename/storefront/layout/header/header.html.twig' %}
            </div>
        {% endblock %}
    </header>
{% endblock %}

使用此表示法,不会加载任何内容。将 sw_extends 替换为 extends,加载文件。

在版本 6.1.6 中可以使用,但在当前的 6.2.2 中不能使用。在我的 theme.json 中,我的视图如下所示:

"views": [
     "@Storefront",
     "@Plugins",
     "@Themename"
  ],

感谢您的帮助和建议。

马库斯

我测试了一下,好像是命名冲突。因为自定义 layout/header/header.html.twig 的名称与核心主题中的名称相同,所以它会同时被覆盖和包含。当我在同一目录下创建同名文件时,默认情况下它会覆盖核心文件。在示例中,它还包含在另一个自定义模板中。但是,当我将其重命名为例如“custom-header”并将其作为“custom-header”包含在内。

当自定义主题的“header.html.twig”扩展核心“header.html.twig”时,也可以完全不包含它。因为上例中的 base_header 块在核心模板中看起来基本相同。 header 可以通过在自定义主题中添加 layout/header/header.html.twig 来覆盖。 header 本身的包含已经在核心“base.html.twig”

中发生