我在OpenCart 3中对主题模板进行了更改。由于模板缓存,我每次都必须在“storage / cache”目录下清除缓存。在开发过程中频繁地工作和预览更改时非常烦人。请提供一些解决方案,以便我们根据生产和开发环境配置缓存。
注意:我已经在线搜索了解决方案,但没有与模板缓存相关的解决方案。解决方案可用于禁用图像缓存,但“图像缓存”和“模板缓存”是Opencart中提供的不同功能。
答案 0 :(得分:35)
您可能需要升级到更新版本的OpenCart3 - 第一个版本(3.0.0.0)没有办法在GUI中执行此操作。
更新版本(例如3.0.2.0)在管理信息中心上有一个装备。单击齿轮,您将获得禁用缓存的选项。
答案 1 :(得分:2)
如果您有权访问,也可以直接从CODE执行此操作。通过ftp或cPanel转到下面的文件路径:
system\library\template\Twig\Environment.php
查找
$this->debug = (bool) $options['debug'];
替换:
$this->debug = (bool) true;
答案 2 :(得分:2)
Opencart版本3.0.2.0 我遇到了同样的问题,请尝试在主题编辑器或实际的原始树枝文件中工作,一两个小时后,我尝试了此方法。
删除主题编辑器中的更改并返回编辑实际的树枝文件 my screen shot
答案 3 :(得分:1)
我认为您将模板编辑为路径:Design->之前的主题编辑器。
清除数据库的oc_theme数据表中的所有日期。
答案 4 :(得分:1)
$this->config->set('template_cache', false);
答案 5 :(得分:1)
另一种方法: 打开system \ library \ template \ Twig \ Cache \ Filesystem.php,找到以下代码行
public function load($key)
{
if (file_exists($key)) {
@include_once $key;
}
}
按以下代码注释:
public function load($key)
{
// if (file_exists($key)) {
// @include_once $key;
// }
}
一旦开发结束,remove the template cache就会在树枝上{{3}}并重新创建。
答案 6 :(得分:0)
在OC 3.0.3.6中,如果您有一些树枝扩展名,例如树枝管理器,则在进行更改后,您应该在修改中选择该扩展名并刷新右上角的按钮。
P.S。一整天都找不到这个,希望对别人有帮助
答案 7 :(得分:0)
这与Scott的答案类似,但仅在数据库/后端上。万一您不能依赖UI,而只能访问DB(像我一样,我搞砸了UI),它在设置表中搜索'developer_theme'key
并将其设置为false或0
UPDATE `oc_setting` SET `value` = '0' WHERE `oc_setting`.`key` = 'developer_theme';