1

我正在使用开放式购物车版本 3。我收到以下消息:Twig_Error_Loader替换主题文件后在打开的购物车中。

完整错误:

 Fatal error: Uncaught exception 'Twig_Error_Loader' with message 'Unable to 
find template "common/column_left.twig" (looked into: 
C:/xampp/htdocs/fast/catalog/view/theme).' in 
C:\xampp\htdocs\fast\system\library\template\Twig\Loader\Filesystem.php:215 
Stack trace: #0  
 C:\xampp\htdocs\fast\system\library\template\Twig\Loader\Filesystem.php(139 
Twig_Loader_Filesystem->findTemplate('common/column_l...') #1 
C:\xampp\htdocs\fast\system\library\template\Twig\Environment.php(312): 
Twig_Loader_Filesystem->getCacheKey('common/column_l...') #2 
C:\xampp\htdocs\fast\system\library\template\Twig\Environment.php(378): 
Twig_Environment->getTemplateClass('common/column_l...', NULL) #3 
C:\xampp\htdocs\fast\system\library\template\twig.php(52): Twig_Environment-
>loadTemplate('common/column_l...') #4 
C:\xampp\htdocs\fast\system\library\template.php(22): Template\Twig-
>render('common/column_l...', false, 'fastor') #5 
C:\xampp\htdocs\fast\system\engine\loader.php(86): Template-
>render('common/column_l...', Object(Registry), '1') #6 C:\xampp\ in 
C:\xampp\htdocs\fast\system\library\template\Twig\Loader\Filesystem.php on 
line 215

对你的帮助表示感谢

4

1 回答 1

2

看起来问题出在 catalog/controller/event/theme.php

代码仅在 $theme:info 未设置时分配路径。

    if ($theme_info) {
        $template = html_entity_decode($theme_info['code'], ENT_QUOTES, 'UTF-8');
    }elseif (is_file(DIR_TEMPLATE . $theme . '/template/' . $route . '.twig')) {
        $this->config->set('template_directory', $theme . '/template/');
    } elseif (is_file(DIR_TEMPLATE . 'default/template/' . $route . '.twig')) {
        $this->config->set('template_directory', 'default/template/');
    }

我将代码修改为此。现在分配了一条路径,并且整个工作正常。您仍然需要重新加载缓存才能看到修改。

if ($theme_info) {
        $template = html_entity_decode($theme_info['code'], ENT_QUOTES, 'UTF-8');
    } 
    if (is_file(DIR_TEMPLATE . $theme . '/template/' . $route . '.twig')) {
        $this->config->set('template_directory', $theme . '/template/');
    } elseif (is_file(DIR_TEMPLATE . 'default/template/' . $route . '.twig')) {
        $this->config->set('template_directory', 'default/template/');
    }
于 2018-01-24T13:41:19.453 回答