购物软件 6:使用 sw_include 时未加载 Twig 文件



目前我正在努力为 Shopwre 6 设计主题。 在 6.2.2 版中,我的主题中断并且不会加载任何包含树枝文件。

以下代码在我的主题的 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替换为扩展,加载文件。

在版本 6.1.6 中它可以工作,但在当前的 6.2.2 中不起作用。在我的主题.json中,我的视图如下所示:

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

感谢您的帮助和建议。

马库斯

我已经测试了一点,似乎这是一个命名冲突。由于自定义layout/header/header.html.twig的名称与核心主题中的名称相同,因此它会被覆盖并同时包含在内。当我在同一目录下创建同名文件时,默认情况下它将覆盖核心文件。在示例中,它还包含在另一个自定义模板中。但是,当我将其重命名为例如"自定义标题"并将其作为"自定义标题"包含时,它可以工作。

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

最新更新