我正在开发一个需要大量定制的 OpenCart 项目。对于我的项目,我必须更改购物车库(system/library/cart.php)中的某些内容。
我将不得不调用在产品模型 (catalog/model/catalog/product.php) 中定义的自定义函数。
在控制器中,加载模型并使用其功能很容易:
$this->load->model("catalog/product");
$this->model_catalog_product->customFunction();
但是如何在控制器之外加载模型呢?您不能创建模型的新实例,我已经尝试过:
require_once("catalog/model/catalog/product.php");
$a_model = new ModelCatalogProduct();
这显然不起作用,因为模型不打算以这种方式使用。
我还尝试使用范围解析运算符(ModelCatalogProduct::customFunction())它也不起作用。
我可以将所有必需的信息作为参数传递,但我宁愿在购物车库类中使用模型,因为更改将是全局的。
甚至可以在 OpenCart 的控制器之外加载模型吗?