自定义OpenCart-应该如何完成



我正在使用OC 2.1开发一个OpenCart商店,我很难理解在控制器级别创建自定义更改的最佳解决方案。

下面是一个简化的例子,向您展示我想知道的内容:

我想修改我的页眉。我正在实现的图形设计对我的帐户链接使用了不同的编写方式,这取决于用户是否已经登录。这当然是一个非常简单的改变,所以以下是我的想法:

我可以编辑我的新模板的header.tpl文件以使用:

<?php echo $logged ? $text_account_signed : $text_account; ?>

这需要更改语言文件,并且该文件位于模板文件夹之外。为了使这个例子不那么复杂,我将省略语言问题。

但是,要创建一个更MVC的解决方案,我应该在catalog/controller/header.php文件中进行更改,不是吗?不幸的是,该文件在模板文件夹之外,因此在更新的情况下,更改将丢失或需要手动修复。

然而,我可以用extension.ocmod.xml文件创建一个扩展名,这将对控制器header.php文件进行更改,并且对于未来的更新来说会更安全(但不确定是否100%sage)。但我想,扩展的数量和/或创建它们的复杂性会极大地影响我的项目时间。这让我很想编辑OpenCart的源代码,让我未来的自己稍后担心它。但我关心这个家伙,我相信他在某个时候会因此恨我的。

所以,我真正的问题是:有没有一种方法可以在控制器级别创建OpenCart修改,而不会破坏未来的更新?

关于修改现有的Controller, Models, Languages是的,您需要使用vQmod或OCMOD,对于template是的,可以根据需要创建自己的模板。别无选择。

如果您使用的是vQmod或OCMOD,那么您不必担心更新,因为出现问题的可能性较小(问题可能只发生在主要更新中)。

对于vQmod,还有其他简单的工具,如vQgen和vQmanager可用的

对于Opencart总体一般信息

最新更新