OpenCart 3.x-包括一个新的模板文件

Lea*_*ght 2 opencart twig opencart-3

我需要将新的OpenCart模板文件添加到另一个模板文件中。

基本上,我已经在/theme/customtheme/template/common/“ header_home.twig”中创建了一个新的头文件。

然后在home.twig中,我将{{header}}更改为{{header_home}},但它没有显示任何内容。

基本上,我要做的就是复制header.twig并将其重命名为header_home.twig,并放入“ xxxxx”以查看它是否在调用新文件,不是。相反,它不显示任何内容。

这是我的home.twig现在的样子:

{{ header_home }}
<div id="common-home" class="container">
  <div class="row">{{ column_left }}
    {% if column_left and column_right %}
    {% set class = 'col-sm-6' %}
    {% elseif column_left or column_right %}
    {% set class = 'col-sm-9' %}
    {% else %}
    {% set class = 'col-sm-12' %}
    {% endif %}
    <div id="content" class="{{ class }}">{{ content_top }}{{ content_bottom }}</div>
    {{ column_right }}</div>
</div>
{{ footer }}
Run Code Online (Sandbox Code Playgroud)

我想我在添加新模板文件时不知何故?如果有人可以帮助我添加一个新的树枝文件,那就太好了。

小智 6

您可以:

  • 如@bogalakon所指出的那样,在Controller / common / header中的OpenCart级别上更改Twig渲染模板的名称(最好通过ocmod进行此操作,以使将来的OpenCart更新不会覆盖您的hack)。
  • 或在“树枝”级别上包含另一个模板

即:

{{ header }} {# Original rendered to HTML OpenCart header - you can move it to your header_home.twig or just drop it #}
{% include customtheme/template/common/header_home.twig %}
<div id="common-home" class="container">
 ...
Run Code Online (Sandbox Code Playgroud)

Twig是非常强大的模板语言。而且,您可以做的不仅仅是简单的包含!OpenCart正式接受它真是太好了。但是现在只有Twig 1.24.2。请参考Twig文档