这里有文件系统/ engine / controller.php中丢失的部分数据。
if (file_exists(DIR_TEMPLATE . $this->template)) {
extract($this->data);
/* Here found header.tpl, media.tpl(my module),
column_left.tpl(this show my module), column_right.tpl,
language.tpl, footer.tpl */
ob_start();
/* Here found header.tpl, language.tpl, footer.tpl */
require(DIR_TEMPLATE . $this->template);
$this->output = ob_get_contents();
ob_end_clean();
}
为什么会这样?我使用Opencart框架,您可以添加新模块。 Made模块可以在controller / common / column_left.php中找到
附录3小时后: 我想这是由于Opencart开发的结构。我导入这个问题是在一个与OpenCart布局结构不同的页面中引发的。 Opencart头版布局是这样的
目录controller / product中的product / category = category.php文件。
我在这里,这种布局:
line / page / path =在文件控制器/ line / page.php中,此方法称为“path”。
关于OpenCart结构的更详细信息之一是一个问题吗?如果由于编辑带来的问题被忽略了?当我知道应该改变什么时,OpenCart原始代码很容易用块修改vqMod板。
答案 0 :(得分:0)
我不明白这个问题,但看看你的代码,你可能想要实现这个目标:
if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/account/account.tpl')) {
$this->template = $this->config->get('config_template') . '/template/account/account.tpl';
} else {
$this->template = 'default/template/account/account.tpl';
}
$this->children = array(
'common/column_left',
'common/column_right',
'common/content_top',
'common/content_bottom',
'common/footer',
'common/header'
);
$this->response->setOutput($this->render());
第一个if-else
正在检查自定义模板(如果存在),否则加载默认模板。 $this->children
部分是启用子模板。最后一行正在完成其余工作 - 用数据填充模板并渲染输出。 如果您正在开发OpenCart中的新功能,最好先查看已存在的文件,不仅要了解工作原理,还要遵循相同的编码标准。