对OpenCart主题的简单修改

时间:2012-11-15 16:29:02

标签: php phpmyadmin opencart

我在OpenCart中使用Shoppica主题。我想对类别页面进行修改。它给出了描述(我在后端输入)而不是产品列表。

在category.tpl中它说:

<?php if ($description) echo $description; ?>

但是我想要一个额外的描述,让我们称它为description2。这应该在产品清单之后。 在PhpMyAdmin中,我在* oc_category_description *中添加了另一行,并将其称为description2 手动(所以在PhpMyAdmin中)我用文字填充了这个。

现在我将以下内容放在category.tpl文件中:

<?php if ($description2) echo $description2; ?>

但现在我收到一个错误:

  

未定义的变量:description2 in   /home/.../public_html/catalog/view/theme/shoppica2/template/product/category.tpl   在第187行

任何想法,我做错了什么。我是否需要在其他地方声明它(在另一个文件中?在哪里?)

1 个答案:

答案 0 :(得分:3)

需要了解内置OpenCart的MVC模式。

简要说明 - 你有一个与数据库交互的Model类,一个在上面运行的Controller类,它调用Model方法(数据检索,数据更新,数据插入),并在视图处理时将输出传递给brwoser (应该是另一个类,但OpenCart只有MC - 模型 - 控制器部分与模板文件)。

所以对你的问题:你必须修改catalog/model/catalog/category.php并寻找检索具体类别数据的名为getCategory的方法。这里的选择查询应该是select * from ... - 如果是这样,一切都很好,但如果它像select category_id, category_description, ... from ...那么你必须在这里添加你的新字段(对不起,我不记得了来自OpenCart的SQL查询。

另外编辑catalog/controller/product/category.php并查找控制类别数据的部分(调用类别模型)或查找以$this->data['description'] = ...;开头的行并在此处添加您的新字段,例如{ {1}}。

希望这会有所帮助。